The short version
- Your colors, palettes and images are never sent anywhere. Every calculation on this site runs in your browser.
- There is no account, so there is nothing to sign up with and no profile to delete.
- There is anonymous, page-level analytics, described below, and it is deliberately configured not to see the colors you are working on.
- Saved palettes live in your browser's local storage, on your device only.
What happens to the colors and images you enter
Nothing leaves the page. Palette generation, tonal ramps, contrast ratios, color vision simulation, format conversion, gradient interpolation and image palette extraction are all implemented in JavaScript that runs on your device. There is no API, no processing server and no queue.
Images you drop into the extractor are decoded onto a canvas element in the page and analysed there. The file is not uploaded, and closing the tab discards it.
Several tools encode their current state in the page URL so a result can be shared or bookmarked. That URL is only transmitted if you send it to someone. See the analytics section for why it is not sent to Google.
Analytics
This site uses Google Analytics 4 to count page views and understand which tools people use. Two settings deserve to be stated plainly, because they are unusual:
-
Query strings are stripped before reporting. The tool
pages carry your colors in the URL —
?fg=…,?c=…— and by default Analytics would record the full address. It is configured to report the path only, so the colors you are working on are not transmitted with the page view. - Google Signals and ad personalisation are switched off. Analytics is not linked to a signed-in Google profile and the data is not used to build advertising audiences.
Google Analytics sets cookies to distinguish one visit from another. If you would rather it did not, any tracker blocker, Do Not Track extension, or Google's own opt-out add-on will stop it, and every tool on this site keeps working with it blocked.
Advertising
Advertising is not currently enabled on this site — no ad
network script is loaded and no advertising cookies are set. If that changes,
it will be Google AdSense, this section will be updated before it goes live,
and the site's ads.txt will name the publisher account.
What is stored on your device
| What | Where | Why |
|---|---|---|
| Saved palettes | localStorage | So "Save" survives a reload. Never transmitted; cleared when you clear site data. |
| Current palette | The URL | So a palette is shareable as a plain link. |
| Analytics identifiers | Cookies set by Google | To tell one visit from another. Only after you accept; removable as described above. |
| Your cookie choice | localStorage | So the banner asks once. Never transmitted; changeable at any time below. |
Consent
Analytics cookies are not strictly necessary, so under the EU ePrivacy Directive and GDPR you have to be asked before they are set. On your first visit a bar at the bottom of the page asks exactly once, with Decline weighted the same as Accept. Nothing is set until you answer: Google Consent Mode is initialised with every signal denied, so the analytics tag loads in a cookieless state and only upgrades if you agree.
The answer is stored in localStorage, not in a cookie, and
applies to this browser only. You can change it at any time:
One limitation stated plainly: this banner is not a Google-certified consent management platform. If advertising is switched on later, serving personalised ads in the EEA or UK requires one, and it will be in place before any ad script loads for those visitors.
Terms, briefly
The tools are provided free and as-is, with no warranty. Color values, palettes and generated CSS are yours to use for anything, commercial included, with no attribution required — color values are not copyrightable in any case.
Accessibility results are computed with the published WCAG 2.x formulas and the Machado, Oliveira & Fernandes color vision matrices. They are accurate implementations of those specifications, but a passing ratio is not a legal compliance certification and does not replace testing with real users.
Contact
Questions, corrections, or a request to remove something: [email protected].
Last updated 1 August 2026.