SVGSketch Learn

How to Change SVG Color

Recolor a single shape, drive a whole document from one color variable, or convert fills to currentColor for CSS theming.

Open SVGSketch

Quick answer

Open the SVG in SVGSketch, click the shape (or marquee-select multiple shapes), open the Appearance panel and pick a new color. To copy one shape's colors onto others, use Copy Formatting (Ctrl+Alt+F) and Paste Formatting (Ctrl+Alt+V). To make the SVG inherit color from CSS, set fill to "currentColor" in the XML Inspector.

Steps at a glance

  1. Click the shape

    Press T and click to select.

  2. Pick a color

    Open the Appearance panel and pick or type a color.

  3. Bulk recolor

    Marquee-select multiple shapes and change Fill once.

  4. Copy formatting

    Ctrl+Alt+F copies a shape's fill and stroke; Ctrl+Alt+V pastes them onto the selection.

  5. Use currentColor

    Set fill to "currentColor" via the XML Inspector (F12) so the SVG inherits from CSS.

  6. Bind a color variable

    Add a Color variable in the Variables panel and bind fills to it with the fx button, so one edit retints everything.

  7. Save the palette

    Save palettes from the color picker's Palette tab for reuse.

Three ways to control color

FILL TYPESSolidLinearRadialPatternNo FillFill panel > Type
Five ways to fill a shape The Fill panel’s Type control, rendered by the editor’s own paint-server emission. No Fill is the one to reach for when a backdrop shape has to stay in the file.
FILL="CURRENTCOLOR"#1d4ed8#0f766e#b91c1cOne exported mark, three CSS color values
currentColor follows the page The same exported star in all three panels. Nothing about the SVG changes - only the CSS color of the element around it, which is what makes one icon serve a light and a dark theme.
ONE COLOR TOKEN#1d4ed8#0f766e#b45309fill="var(--brand)" on every shape
One token recolors everything bound to it Three shapes, one --brand variable, three values. Binding fill to a color variable in the Variables panel is the only edit that retints a whole document at once - there is no replace-color command.

Step 1: Recolor a single shape

Press T for the Transform tool, click the shape, and open the Appearance panel. Pick a color from the picker - Custom, Schemes, Blend, and Palette tabs - or type a hex value directly. Stroke color works the same way on the Stroke row of the Appearance panel.

Step 2: Recolor multiple shapes at once

Marquee-select multiple shapes (drag a selection rectangle), or Shift+click each one. Change Fill once and every selected shape updates. Useful for retheming an entire icon set in one operation.

Step 3: Copy formatting between shapes

To propagate one shape's appearance to others, select the source shape and choose Edit > Copy Formatting… (Ctrl+Alt+F), then select the targets and Edit > Paste Formatting (Ctrl+Alt+V). The dialog lets you choose which categories travel - fill, border and font - so you can retint without disturbing stroke weights or type.

Worth knowing before you plan around it: there is no find-and-replace for color and no "select same fill" command, so the targets are whatever you select by hand. If you find yourself doing that repeatedly, bind the color to a variable instead - step 6.

Step 4: Use currentColor for CSS theming

Set a shape's fill to "currentColor": open the XML Inspector (F12), click the shape's fill attribute value, and type currentColor. The SVG will inherit color from the surrounding CSS - so a dark-mode toggle on your site automatically retints the icon. SVGSketch preserves currentColor through editing and export rather than baking it to a literal color.

Step 5: Apply a gradient or a pattern instead of a flat color

On the Fill row of the Appearance panel, switch Type from Solid Color to Linear Gradient, Radial Gradient, Pattern or No Fill. For a gradient, add color stops, drag them to position, and adjust each stop's color and opacity; Spread controls what happens beyond the last stop (Pad, Repeat or Reflect), and Coordinate space chooses between the shape's bounding box and user space. A radial gradient additionally exposes a focal radius.

Position is edited on the canvas rather than in the panel - the panel says so: "Enter Edit mode to adjust gradient position with handles." Stroke works the same way, and Paint Order decides whether the fill or the stroke paints first.

Step 6: Bind the color to a variable to retint everything at once

This is the answer to recoloring a whole document in one edit. Open the Variables panel, add a variable of type Color, then click the fx button beside the Fill swatch on each shape that should follow it and pick that variable. The fill is written as var(--name), and changing the variable's value retints every shape bound to it.

The reference survives export: the file carries fill="var(--brand)" plus a <style> block declaring the token, so the same substitution works wherever the SVG is embedded. If you are targeting a renderer that ignores CSS - a rasterizer or an older icon pipeline - enable "Maximum compatibility for variable bindings" in the SVG export options, which writes a literal attribute alongside the variable reference.

The Classes section of the same panel is the other way to reach many shapes at once: write a rule, then use "Apply class to selection".

Step 7: Save and reuse the palette

Once the recolored SVG looks right, open the color picker's Palette tab: generate a harmony from your base color, lock the swatches you want to keep, and click "Save palette". Saved palettes live in your editor settings rather than in the document, so future documents can pick the same colors without retyping hex values. Clicking a saved swatch applies its literal value - it does not create a binding, which is what step 6 is for.

FAQ

How do I recolor an entire SVG with one click?

For a one-off, Select All (Ctrl+A) and change the Fill value in the Appearance panel - though that flattens a multi-color drawing to a single color. To keep the drawing and retint it repeatedly, bind the fills to a Color variable in the Variables panel; after that, editing the variable is the one click.

Can I make an SVG icon match my CSS color?

Yes. Set fill="currentColor" on the SVG paths. Any color CSS rule on the parent element will tint the icon.

How do I swap one specific color across many shapes?

There is no find-and-replace for color and no "select same fill", so the shapes have to be selected by hand: recolor one, copy its formatting (Ctrl+Alt+F), select the others that shared the old color, and paste formatting (Ctrl+Alt+V). If it is a color you will change more than once, bind those fills to a variable instead and edit the variable.

Is there an eyedropper for picking a color off the canvas?

No. Read the value from the shape you want to match - select it and copy the hex from the Fill row of the Appearance panel, or use Copy Formatting to move fill, border and font from one shape to another without retyping anything.

Can I apply a gradient instead of a flat color?

Yes. On the Fill row of the Appearance panel, set Type to Linear Gradient or Radial Gradient and add color stops, with Spread and Coordinate space controls and a focal radius for radial. Pattern and No Fill are the other two types.

Will my recolor stick when the SVG is embedded as <img>?

Only if the colors are baked in. If you used currentColor, the embedding context (CSS color rule) controls the color - which only works if the SVG is inlined or referenced via <object>/<svg>.

Open your SVG in SVGSketch

Start with a blank canvas, import an SVG, or use the editor as a conversion and cleanup step.

Open SVGSketch