Legal
Cookie Policy
Effective date: June 19, 2026
This Cookie Policy explains what cookies and similar technologies FreeCodeChecks.com uses, why we use them, and how you can control them. It is a companion to our Privacy Policy — if you want the full picture of how we handle personal data, start there.
1. What cookies are
Cookies are small text files that a website stores on your device when you visit. They let the site remember information about your visit, like keeping you signed in or storing your preferences. We also use localStorage (a related browser-storage mechanism) and may, with your consent, use other tracking technologies like web beacons inside ads.
For the rest of this policy, when we say "cookies" we mean cookies and any equivalent technologies described above.
2. Cookies we use
We group cookies into four categories. Only the first category is set without your consent — the others are gated behind the consent banner you saw on your first visit.
Essential cookies
These cookies are necessary for the site to work. Without them you cannot sign in or use the core features. We do not need consent to set them, because the service would be broken without them.
| Cookie | Set by | Purpose | Duration |
|---|---|---|---|
sb-*-auth-token | Supabase (our auth provider) | Keeps you signed in across requests | Up to 1 week (refreshed on activity) |
csrf-token | FreeCodeChecks | Protects forms from cross-site request forgery | Session |
consent-state | FreeCodeChecks | Remembers your choices in the consent banner so we do not show it on every page | 12 months |
Functional storage
We use your browser's localStorage (not cookies in the strict sense) to remember UI preferences. This data stays on your device and is not transmitted to our servers.
| Key | Purpose | Duration |
|---|---|---|
theme | Your light/dark mode preference | Until cleared |
recent-addresses | The last few addresses you looked up, so you can revisit them | Until cleared |
You can clear localStorage at any time from your browser's developer tools or settings.
Analytics cookies
These cookies help us understand how people use FreeCodeChecks so we can improve it. They are first-party (set by our domain, not a third-party tracker), they aggregate visits, and they do not include personally identifiable information like your email address.
| Cookie | Set by | Purpose | Duration |
|---|---|---|---|
_fcc_analytics | FreeCodeChecks (first-party) | Counts unique visits and page views; aggregated, no PII | 12 months |
If you decline analytics in our consent banner, this cookie is not set.
Advertising cookies
These cookies are set by Google AdSense and its ad-tech partners. They are used to choose which ads to show you, to measure ad performance, and (if you consent to personalization) to make ads more relevant to your interests. They are only set after you grant consent through our Consent Management Platform.
| Cookie | Set by | Purpose | Duration |
|---|---|---|---|
__gads, __gpi | Google AdSense | Ad selection and frequency capping | Up to 13 months |
IDE, DSID | Google DoubleClick | Ad measurement and conversion tracking | Up to 13 months |
NID | Stores ad preferences | Up to 6 months |
A full list of cookies set by Google's ad systems is available at policies.google.com/technologies/cookies.
If you decline advertising in the consent banner, none of these cookies are set, and you will see only non-personalized ads chosen based on the page content.
3. The Consent Management Platform (CMP)
We use a Google-certified Consent Management Platform that complies with the IAB Europe Transparency and Consent Framework (TCF v2.2). The first time you visit FreeCodeChecks, the CMP shows you a banner with three choices:
- Accept all — allow analytics and advertising cookies, including personalized advertising.
- Reject all — only essential cookies are set; you still see ads, but they are non-personalized.
- Manage preferences — toggle each category individually.
Your choice is stored in the consent-state cookie and respected on every subsequent visit until you change it or the cookie expires (12 months).
Ads and analytics scripts are blocked from loading until your consent choice is resolved, so no advertising cookie is ever dropped without your decision.
4. How to manage your preferences
You have several ways to control cookies on FreeCodeChecks:
- On our site. Click "Manage cookie preferences" in the footer of any page to re-open the consent banner and change your choices.
- Browser controls. All major browsers let you block or delete cookies through their settings. Doing this affects every site, not just ours. If you block essential cookies, you will not be able to sign in.
- Do Not Track / Global Privacy Control. If your browser sends a Global Privacy Control (GPC) signal, we treat it as an opt-out of the sale or sharing of personal information for California residents (see our Privacy Policy). We do not currently respond to the older "Do Not Track" header, because there is no industry consensus on what it should mean.
- Opt out of personalized Google ads everywhere. Visit adssettings.google.com.
- Opt out of third-party advertising network cookies. Visit the Network Advertising Initiative at optout.networkadvertising.org or the Digital Advertising Alliance at optout.aboutads.info.
5. Third-party cookies
Some cookies on FreeCodeChecks are set by third parties we work with:
- Google AdSense and DoubleClick — set advertising cookies on pages that display ads, only after you grant consent.
- Stripe— sets fraud-prevention cookies on pages that involve a paid checkout (for example, when you purchase a research request). These cookies help Stripe distinguish legitimate buyers from fraudulent ones. See Stripe's cookie disclosures at stripe.com/cookies-policy/legal.
We do not place advertising cookies from these third parties on pages where they are not relevant (for example, on sign-in, sign-up, error pages, or admin pages).
6. Changes to this Cookie Policy
We may update this Cookie Policy when we add new features, change vendors, or when the law changes. The "Effective date" at the top reflects the most recent change. If we make a material change to how we use cookies, we will notify you through the consent banner so you can review and re-confirm your choices.
7. Contact
Questions about cookies? Email ben@emberbyte.io.
Emberbyte LLC
Attn: Ben Edelman
Ashburn, Virginia, USA