Color Palette Generator
Generate color palettes from images or create custom ones. Runs on your device — nothing is uploaded, nothing is stored.
This color palette generator builds a set of matching colors from a single base color. Choose the base with the color picker, or press Random Palette for a new starting point, then pick a color scheme: complementary (the base plus its opposite on the color wheel), triadic (three colors 120 degrees apart), analogous (five neighbouring hues), split-complementary, tetradic (four colors 90 degrees apart), shades (ten steps from dark to light) or monochromatic (ten steps of saturation at the same hue).
Every swatch shows its HEX, RGB and HSL values, and clicking a value copies it. You can also copy the whole palette as CSS custom properties (--color-1, --color-2 and so on) or as JSON with HEX, RGB and HSL for each color, or export it as a PNG image. The padlock on a swatch locks that color so it stays put while you change the base color or scheme.
Why this runs on your device
A color palette is not private, so there is no honest privacy argument. What running in the page gives you is immediacy: the swatches redraw the moment you move the picker or change the scheme, and nothing needs installing or signing up for.
- Pick a base color with the color picker, or press Random Palette.
- Choose a color scheme such as complementary, triadic or analogous.
- Lock any swatch you want to keep, then adjust the base or scheme again.
- Click a value to copy HEX, RGB or HSL, or use the CSS, JSON or PNG buttons for the whole palette.
- The harmonies are calculated by rotating the hue in the HSL color model while keeping saturation and lightness the same. That is simple and predictable, but not perceptual: a yellow and a blue at the same lightness will not look equally bright, so check your palette by eye.
- There is no contrast or accessibility check. Whether two swatches are readable together as text and background is something to test separately.
- Colors cannot be pulled from a photo; the palette always starts from the single base color you choose.
- Locks follow a swatch's position, not its color. If you switch to a scheme with fewer colors, locked swatches beyond that count disappear.
- Palettes are not saved. The palette name field is only a label on the page and is not included in the CSS, JSON or PNG you copy or export. The PNG uses a fixed 200-pixel square per color.