Explore cold color palettes built from blue, cyan, slate, and violet relationships for technical products, data interfaces, and precise visual systems.
Cold palettes lean on blue, cyan, and indigo, which together make up about 70% of this collection. Blues exist at every lightness, so most sets already contain a dark navy and a pale ice tone. Many also include one warm accent, which is usually the clearest choice for actions.
Seven in ten swatches in this collection are blue, cyan, or indigo. Unlike reds and yellows, blues are easy to find at every lightness, from #161a30 to #eef5ff. That is why roughly four in five cold palettes already contain a pair of colors at 4.5:1 or more: a dark navy and a pale ice tone often sit in the same set.
Pick text colors by how light they are, not by hue. Blue text on a blue background can look distinct because the hues differ slightly, while the measured contrast stays low.
Several palettes here pair three cool colors with a single warm one, such as #2d3250, #424769, #7077a1, #f6b17a. The warm swatch is the obvious accent. Apricot #f6b17a on the navy #2d3250 measures 6.82:1, so it can carry links, a primary button with dark text, or a highlight.
The periwinkle #7077a1 is harder to place. On the navy it is 2.88:1, below the 3:1 needed for borders, and white text on it is 4.34:1. Use it for large fills or decoration.
A palette that steps evenly from light to dark makes a ready-made sequential scale for heatmaps and choropleths. #ecf4d6, #9ad0c2, #2d9596, #265073 gets darker at every step, so higher values read as darker cells even in greyscale.
:root {
--scale-1: #ecf4d6;
--scale-2: #9ad0c2;
--scale-3: #2d9596;
--scale-4: #265073; /* 7.46:1 on --scale-1 */
}Build surfaces from blue-greys rather than pure greys so the neutrals belong to the palette. Keep cyan or violet for active and selected states, and use one warm color, such as apricot #f6b17a, for the single most important action.
Blue on blue is where cold palettes fail. In #eef5ff, #b4d4ff, #86b6f6, #176b87, the sky #86b6f6 on the pale #eef5ff is 1.91:1 even though the two look distinct; the teal #176b87 reaches 5.49:1. Violet #7b66ff holds white text at only 4.05:1, so keep it for large type and icons.
Updated