?
learner
Please choose a username
Password must be 6+ characters
Passwords don't match
Please enter your date of birth
Privacy Policy

Privacy Policy

Last Updated: August 31, 2026

General

At QuackCode, we care about your personal information, so we've prepared this Privacy Policy to explain how we collect, use, and share it. This Privacy Policy applies to the QuackCode website and app (the "Service"), operated by QuackCode ("we," "us," or "our"). By using the Service, you agree to QuackCode's collection, use, and sharing of your personal information in accordance with the terms of this Privacy Policy.

QuackCode is completely free — there is no premium tier, no paywall, and we never ask for payment information. This policy contains no sections about billing or payment data because we don't collect any.

Information We Collect

a. Account Registration
To register for a QuackCode account, you choose a username and password and provide your date of birth (so we can apply the right protections for your age — see "Children's Privacy" below). We do not require your real name, and we do not require an email address for most accounts.

b. Profile & Public Profile Information
After you register, a profile is created for you showing your username, streak, total XP, and earned badges. Your profile is private by default. From Settings, adult and teen accounts (13+) may turn on a shareable public profile link, which shows only your username, XP, streak, badges, and course progress — never your date of birth, password, or any other personal information. Accounts registered as under 13 cannot enable public profile sharing; this option is disabled entirely for those accounts.

c. Learning & Activity Data
We collect data about your use of the Service to make it work, including which lessons and katas you complete, your answers and progress, your streak and XP history, badges earned, and activity in social features like Duels, Leagues, Guilds, and Community Challenges. We use this to save your progress, personalize what you see next (such as which topics to review), and improve our lessons.

d. User-Generated Content
Features like Project Showcase, Community Challenges, Guild chat, and comments let you post your own content. Anything you post through these features may be visible to other users of the Service.

e. Information Collected Automatically
Like most websites and apps, we may automatically collect technical information such as your IP address, browser and device type, operating system, and general usage data (such as pages visited and session length), for the purpose of operating, securing, and troubleshooting the Service.

f. Cookies
We use strictly necessary cookies and local storage to keep you logged in and to save your progress and preferences on your device. We do not use cookies for personalized advertising, and we do not currently use third-party analytics or advertising cookies.

How We Use Your Information

We use your information to: provide and improve the Service; save and display your learning progress, streak, and XP; power social features like Duels, Leagues, and Guilds; respond to support requests; keep the Service secure and prevent abuse; and communicate with you about your account (such as password resets). We do not use your data — or a child's data — for advertising, and we do not build advertising profiles about you.

How We Share Your Information

We do not sell your personal information, and we never have. We may share information in the following limited circumstances: with service providers who help us operate the Service (for example, hosting providers), where required to comply with the law or a valid legal request, to protect the rights, property, or safety of QuackCode, our users, or the public, or with your consent. Public Profile Information you choose to share (see above) is, by design, visible to whoever has the link.

Your Privacy Rights

Depending on where you live, you may have the right to: know what personal information we've collected about you; access a copy of it; request that we correct inaccurate information; request that we delete your information; object to or restrict certain processing; and export your information in a portable format. You (or, for a child's account, their parent/guardian) can exercise most of these rights directly from Profile → Settings, including deleting your account. For anything else, contact us at [CONTACT EMAIL]. We may need to verify your identity before completing certain requests.

Data Retention

We keep your information for as long as your account is active, so the Service keeps working the way you'd expect (your streak, XP, and progress stay intact). If you delete your account, we delete or anonymize your personal information within a reasonable time, except where we're required to keep certain records to comply with the law, resolve disputes, or prevent fraud or abuse.

Children's Privacy (COPPA)

QuackCode is designed to be usable by learners of all ages, including children under 13, and we take extra care with their information.

Registration. Children under 13 register with a username that isn't tied to their real name — we never ask them for a real name, email address, or phone number. Instead, we ask for a parent or guardian's email address, and require verifiable parental consent before the account is fully activated, in accordance with the Children's Online Privacy Protection Act ("COPPA"). We collect only the minimum information necessary to operate the account.

Extra protections for under-13 accounts. Accounts registered as under 13 automatically get:

• No public shareable profile — this feature is fully disabled for the account.
• No advertising of any kind, personalized or otherwise (we don't run ads at all).
• No third-party analytics or behavioral tracking.
• The same COPPA protections apply regardless of which social feature (Duels, Guilds, Community Challenges, etc.) the account uses.

Parental controls. A parent or guardian can review, update, or request deletion of their child's information at any time by emailing [CONTACT EMAIL]. Under-13 accounts also have a read-only Parent View link, available from that account's own Settings page, which lets a parent check in on progress without needing their own account.

Data Security

We implement reasonable technical and organizational measures designed to protect your information — including encrypting passwords and restricting who can access account data — though no method of transmission or storage over the internet is ever 100% secure.

Links to Third-Party Websites

The Service may contain links to third-party websites (such as our social media pages). We are not responsible for the content or privacy practices of any site we don't operate. This Privacy Policy applies only to information collected by QuackCode.

Changes to This Privacy Policy

We may update this Privacy Policy from time to time to reflect changes to our practices. If we make a material change, we'll post the updated policy here with a new "Last Updated" date, and where appropriate, we'll let you know in the app.

Contact Us

If you have questions about this Privacy Policy, or want to exercise a privacy right described above, contact us at [CONTACT EMAIL], or visit our Contact Us page.

This document is a general template and does not constitute legal advice. Please have it reviewed by a licensed attorney before relying on it.

Third-Party Credits

Emoji graphics are provided by Twemoji, copyright 2020 Twitter, Inc and other contributors, licensed under CC-BY 4.0. Fonts are provided by Google Fonts under the SIL Open Font License.

Terms of Service

Terms of Service

Last Updated: August 26, 2026

These Terms of Service ("Terms") govern your use of QuackCode ("we," "us," or "our"), a free coding education platform. By creating an account or using the Site, you agree to these Terms. If you do not agree, please do not use the Site.

By accessing or using any part of QuackCode, you represent that you have read, understood, and agree to be bound by these Terms, including any future updates. If you do not agree to these Terms, you are not authorized to use QuackCode. QuackCode is, and always will be, free — there is no premium tier, no subscription, and no in-app purchases, so these Terms don't contain any payment, billing, or refund sections.

1. Eligibility & Accounts

QuackCode is free to use and open to learners of any age, including children under 13 with verifiable parental consent (see our Privacy Policy). When you register, you agree to provide accurate information and to keep it up to date. You're responsible for maintaining the confidentiality of your password and for all activity that happens under your account. One account per person — do not share credentials or create multiple accounts to circumvent limits (e.g. daily post/message limits).

2. Acceptable Use

Our goal is a positive, useful, and safe learning experience for everyone. When you use QuackCode, don't: harass, bully, impersonate, or harm other users; post spam, malware, or illegal content; cheat, exploit bugs, or use automation to gain an unfair advantage (in Duels, Leagues, or XP); scrape, data-mine, or use bots against the Service; or attempt to disrupt, reverse-engineer, or gain unauthorized access to the Service beyond what's needed for your own learning. We may suspend or terminate accounts that violate this policy, with or without notice, at our discretion.

3. User-Generated Content

Features like Project Showcase, Community Challenges, Guild chat, and comments let you post your own content ("Content"). You keep ownership of what you post, but by submitting Content you grant QuackCode a non-exclusive, worldwide, royalty-free license to host, display, distribute, and store it as part of operating the Service (for example, showing your shared project to other learners). You represent that you own or have the rights to any Content you submit. You're responsible for what you post — don't post anything you don't have the right to share, or anything illegal, harassing, hateful, or infringing on someone else's rights. We may remove Content or moderate accounts that violate this Section at our discretion, without any obligation to do so.

4. QuackCode's Content

Course lessons, exercises, katas, badges, the QuackCode name and logo, and the underlying software (collectively, "Service Content") are the proprietary property of QuackCode or its licensors. You may use Service Content for your own personal learning. You may not copy, redistribute, scrape, publicly republish, or use Service Content commercially without our permission, and you may not use data-mining, robots, or similar automated methods to extract it.

5. Description of Service; Changes

QuackCode may, in its sole discretion and at any time, update, change, suspend, improve, or discontinue any part of the Service — including individual features, courses, or the Service as a whole — temporarily or permanently, with or without notice.

6. No Warranty

QuackCode is provided "as is" and "as available," free of charge, without warranties of any kind, whether express or implied, including any implied warranties of merchantability, fitness for a particular purpose, or non-infringement. We don't guarantee the Service will be uninterrupted, secure, or error-free, or that it will meet your specific learning goals. Some jurisdictions don't allow the exclusion of implied warranties, so this exclusion may not fully apply to you.

7. Limitation of Liability

To the fullest extent permitted by law, QuackCode will not be liable for any indirect, incidental, special, or consequential damages arising out of or relating to your access to or use of (or inability to access or use) the Service. Because QuackCode is provided entirely free of charge, our total aggregate liability to you for any claim arising from these Terms or the Service is limited to a nominal amount ($10 USD).

8. Termination

You may delete your account at any time from Profile > Settings. We may suspend or terminate your access immediately, for any reason, including a violation of these Terms or our discontinuation of the Service. Sections 4, 6, 7, and 9–11 of these Terms survive any termination.

9. Governing Law

These Terms are governed by the laws of the jurisdiction in which QuackCode operates, without regard to conflict-of-law principles, regardless of where you access the Service from.

10. Changes to These Terms

We may update these Terms from time to time. We'll post the updated Terms here with a new "Last Updated" date; continuing to use the Service after changes take effect means you accept the new Terms. If you don't agree to updated Terms, please stop using the Service and delete your account.

11. Contact Us

Questions about these Terms? Reach us at [CONTACT EMAIL] or visit our Contact Us page.

This document is a general template and does not constitute legal advice. Please have it reviewed by a licensed attorney before relying on it.

About Us

🦆 About QuackCode

Learn to code, one pond at a time.

QuackCode is a free, gamified coding education platform — bite-sized lessons, real auto-graded coding challenges, and a genuinely social learning experience, all built around the idea that learning to code should feel like leveling up in a game, not sitting through a lecture.

What you can do here

Work through structured courses in Python, JavaScript, HTML/CSS, SQL, Java, C++, TypeScript, and more — each broken into short lessons with real practice, not just video watching. Solve real, automatically-graded coding katas in Duck Dojo. Compete in real-time Duels and weekly Leagues against actual other learners — never bots. Team up in Guilds, share your projects for peer feedback, and track your streak, XP, and mastery over time.

Why "QuackCode"?

Ducks paddle calmly on the surface while working hard underneath — that's what learning to code actually feels like. We leaned into it: streaks, XP, and badges build the pond theme throughout the app, but the substance underneath is real, structured computer science and programming education.

Our approach

Every course is built to actually teach — real explanations before real practice, not just quiz after quiz. We track when something isn't landing (mastery decay, spaced-repetition review of your specific weak spots) and surface it back to you automatically, rather than assuming one pass through a lesson is enough.

It's free

QuackCode has no premium tier or paywall — every course, every feature, is free to use.

Have questions? Visit our Contact Us page.

Contact Us

📬 Contact Us

Questions, bug reports, or feedback — we'd like to hear it.

General support

For account issues, bugs, or general questions, email us at [CONTACT EMAIL].

Parents & guardians

If your child has an account and you have questions about their data, privacy, or want to request a change, email [CONTACT EMAIL] — see our Privacy Policy for details on what we collect and why. Under-13 accounts also have a read-only Parent View link, available from that account's own Settings page.

Found a bug?

Let us know what happened, what you expected instead, and — if possible — which course/lesson or feature you were using. That context makes it much faster to track down.

Follow us

📸 Instagram

We aim to respond to every message, though response times may vary.

Welcome to the pond! 🌿

Pick a course and keep your streak going.

0
Day streak 🔥
0
Total XP ⭐

JavaScript

3 units · 13 lessons

⭐ 0 XP
⏱️ ~0 min left
🦆 Sandbox
index.js
ReadyJavaScript
Console
🎉
Correct!
🏅
Achievement Unlocked! You earned a badge
🦆✨ QuackCode AI
Your Golden Egg AI tutor
🥚✨

Ask me anything about your courses — stuck on a bug, confused by a concept, or just want a different explanation. I'm here to help!

🛒 Item Shop
🪶 0 Feathers available
🛒

Spend your Feathers!

Win duels, solve katas, play challenges, and hit your daily goal to earn 🪶 Feathers, then use them here to customise your profile banner and icon.

💸 Not enough Feathers — win a duel, solve a kata, or hit your daily goal to earn more!
Community Challenges

🧩 Community Challenges

Trivia questions written by other coders. Play them for a little bonus XP, or write your own!

🦆 Duck Dojo

Real, automatically-graded JavaScript challenges. Write a function, run the hidden tests, and see exactly which ones pass.

0/0 solved0%