Skip to main content
Locking a color marks it as fixed. Locked colors are never replaced by reroll operations, and they serve as the hue reference point when generating new colors under any non-random relationship mode.

Toggling locks

Press a digit key to toggle the lock on the color at that position:
KeyColor position
1Position 1
2Position 2
9Position 9
0Position 10
A lock icon appears on the swatch when it is locked. Press the same key again to unlock it.
Lock shortcuts only work in the palette view and only when no dialog is open.

What locking does

When you press R to reroll all colors, or when the relationship changes:
  • Locked colors are skipped. Their hex values remain exactly as they are.
  • Unlocked colors are regenerated relative to the locked colors as anchors.
When you reroll a single color with Alt + 1-9, 0, a locked color at that position will not be rerolled — the shortcut is ignored for locked positions.

Locked colors as relationship anchors

The color generation system uses locked colors as the reference when computing relationship hues. Here is how the reference is determined:
1

Collect locked colors

The hex values of all locked colors are gathered into a list.
2

Compute the average HSL

The hue is averaged using a circular mean (to handle wrapping correctly at 0°/360°). Saturation and lightness are averaged arithmetically. This produces a single reference HSL.
3

Apply relationship offsets

Each unlocked color is generated by applying the active relationship’s hue offset to the reference hue, plus small jitter on saturation and lightness. See Color relationships for the exact offsets per mode.
If no colors are locked and the active relationship is not random, a random seed color is generated and placed at the first unlocked position. All other unlocked colors are generated relative to that seed. This means the palette still follows the relationship’s hue logic even from scratch.

Lock state during reordering

When you drag a swatch to a new position or use rearrange mode (M), the lock state travels with the color. A locked swatch that is moved to position 3 is still locked at position 3. The same applies to swaps in rearrange mode: the lock states of the two swapped colors are exchanged along with the color values.

Lock state and undo/redo

Undo and redo (Z / Shift + Z) restore the color values at each history entry. Lock states are not part of the undo stack — they are separate UI state. This means undoing a reroll restores the previous hex values, but lock states remain wherever you last set them.

Lock state and presets

Applying a preset replaces all colors, including locked ones. If any colors are locked when you press P or Shift + P, you will see a warning before the preset is applied.
Applying a preset with locked colors will replace those colors with preset-generated ones. Unlock the colors you want to keep before applying a preset, or use undo (Z) to recover the previous palette after applying.

Using locks effectively

Lock your primary brand color and then press R or change the relationship. Every generated color will be harmonically related to the locked brand hue.
After generating a palette, lock the colors you like and press R to reroll only the ones you don’t. The locked colors stay in place and continue to anchor the generation.
Locking more than one color uses their averaged hue as the anchor. This is useful when you want new colors to bridge two established hues — lock both, then reroll the rest.
Switch to the Monochromatic relationship, lock one color, and reroll all. Every unlocked color will share the same hue as the locked one, varying only in saturation and lightness.

Generating palettes

How to add, reroll, and manage palette colors.

Color relationships

How locked colors act as anchors in each relationship mode.

Presets

Apply a preset — and what happens to locked colors.

Keyboard shortcuts

Complete list of all keyboard shortcuts.

Build docs developers (and LLMs) love