Skip to main content
Back to Colors generators

Colors

HSL Color Palette Explorer

Used by developers, writers, and creators worldwide.

The HSL color palette explorer lets designers generate structured color palettes by controlling hue, saturation, and lightness directly — the way humans actually perceive color. Set a base hue (0–360) or use -1 for a random pick, choose how many colors to output, and get a spread of HSL values with hex equivalents ready to paste into CSS or Figma. Because HSL keeps hue fixed while stepping through saturation and lightness, every color in the result stays perceptually related. This makes it practical for building tint-and-shade scales similar to Tailwind's 50–950 ramps, generating accessible contrast pairs, or breaking out of habitual color choices during early moodboarding.

Loading usage…

Free forever — no account required

How to use

  1. Choose your options above
  2. Click Generate
  3. Copy your result

Detailed instructions

  1. Enter a hue value between 0 and 360, or leave it at -1 to pick a random hue on generation.
  2. Set the number of colors to match your target scale size, such as 6 for a basic ramp or 9 for a full system.
  3. Click Generate to produce the palette, which displays each color as a swatch alongside its HSL and hex values.
  4. Copy individual HSL values for CSS custom properties or hex codes for Figma, Tailwind config, or other tools.
  5. Re-run with the same hue but a different count to expand or trim the scale without changing the color family.

Use Cases

  • Building a 6-stop primary color scale for a Tailwind CSS config using CSS custom properties
  • Generating accessible text and background pairs within a single hue for WCAG contrast checks
  • Creating hover, active, and disabled state variants for a UI component in Storybook
  • Documenting a brand color ramp as Figma color styles ready for designer handoff
  • Exploring unexpected palette directions by using random hue mode during early client moodboarding

Tips

  • Pin a hue and run two batches — one high-saturation and one low — to create a vivid and a muted variant of the same palette for use as semantic and neutral tokens.
  • Hues between 200 and 260 (blues) appear darker at equal lightness than yellows or greens; compensate by bumping lightness 5–10% higher to match perceived brightness.
  • Use the random hue mode three or four times in a row, then pick the most unexpected result — constrained randomness often surfaces palettes deliberate choices never reach.
  • If you need a warm neutral, set hue to 30–40 with saturation between 8% and 15%; this produces taupes and creams that pair naturally with nearly any accent hue.
  • After generating, test your darkest and lightest stops against each other in a contrast checker; an HSL ramp that looks balanced visually may still fail WCAG AA at key pairings.
  • For branding work, identify your brand's exact hue by picking its closest hex in a color picker and reading the H value, then use that number as your fixed base hue here.

FAQ

why use HSL instead of hex or RGB when building a color scale

HSL separates color identity (hue) from intensity and brightness, so you can lighten or mute a color by changing one number instead of recalculating all three RGB channels. This makes stepping through a consistent tint-and-shade ramp — like the 100–900 scales in Tailwind or Material Design — much faster and less error-prone.

does CSS natively support HSL values or do I need to convert to hex

CSS has supported hsl() since IE 9, so no conversion is needed for web use. Modern browsers also support the space-separated syntax hsl(210 60% 50%) and an optional alpha channel hsl(210 60% 50% / 0.8). You can use the HSL output directly in custom properties or convert to the paired hex code if your tooling requires it.

what saturation and lightness levels work best for accessible UI colors

Saturation between 40% and 70% generally reads as intentional without causing eye strain or contrast failures. Lightness around 45–55% is typical for interactive defaults, while 15–25% suits dark-mode surfaces and 80–95% works for subtle backgrounds. Always run results through a WCAG contrast checker alongside this tool to confirm compliance.