All posts

AI Icon Generator: How to Make Consistent Icon Sets

JammyJar Team14 min read
Grid of matched pink line icons with one mismatched icon being pulled into alignment

You generate eight icons. Each one looks great on its own. Then you line them up and the search glass has a 3px stroke, the gear has 1.5px, the bell ends in round caps, the user ends in square ones, and three of them sit a pixel and a half off center. Eight icons, eight different apps.

That's the real failure mode of every AI icon generator, and rewriting the prompt won't fix it. Consistency isn't a model you buy. It's variance control, and it runs on six moves you make in a specific order.

  1. Write the rules down before you generate anything.
  2. Pick a generator that outputs real vector, or plan the conversion.
  3. Lock one style stem and change only the subject.
  4. Condition on references instead of hoping.
  5. Force the finished set onto a real design-system grid.
  6. Vectorize, optimize, run the accessibility check, ship.

Skip any of them and you get the ransom-note set. Do all six and a 24-icon system takes an afternoon.

Decide the rules before you type a prompt

An icon set is a system with shared laws, not a pile of nice-looking glyphs. Those laws are boring and specific: one canvas size, one grid, one stroke weight, one corner radius, one terminal style, one decision about fill versus stroke, plus padding and optical alignment.

Think of it like a type family. Every letter in Helvetica Regular shares a stem width and an x-height, which is why a paragraph looks like one voice instead of forty. Icons work the same way. The eye reads the shared rules, not the individual drawings.

Which is why "make one great icon" and "make forty coherent icons" are different jobs. The second one is a variance problem, and variance is what diffusion models are built to produce.

Before you open any tool, write down six lines: canvas, grid, stroke, caps and joins, corner radius, color rule. Those six lines become your prompt stem in about ten minutes.

Single outline icon on a pink measurement grid with calipers checking its stroke width


Most "AI SVG" is a PNG in a trench coat

Plenty of tools hand you a file ending in .svg that contains a raster bitmap wrapped in an <image> tag. It scales without blurring in the browser, so it passes the glance test, and then it dies the first time a developer tries to recolor it with currentColor or nudge an anchor point.

Genuine native-vector output is rare. Recraft generates real SVG with editable paths and anchor points, which is why it keeps showing up as the category's headline feature. GPT Image, Gemini, Midjourney, FLUX, Grok and Krea are raster-only. Everything else is conversion after the fact.

The check takes five seconds: open the file in a text editor and search for <image or base64. If either shows up, you have a picture of an icon, not an icon.

Cost isn't what decides this. As of 31 August 2026, Recraft's cheapest paid plan is $10 a month billed annually or $12 monthly, GPT Image runs roughly $0.005 to $0.25 per image depending on size and quality, and Recraft's V4.1 Pro Vector model lists at $0.30 per image on OpenRouter since its 13 May 2026 release. Vector output costs a few cents more than raster and saves you an hour of path cleanup. We've written up the same trap in more detail for brand marks, in the guide to getting an editable SVG logo out of AI instead of a dead PNG.

One caveat from people who use it daily: native AI vector files often arrive carrying far more anchor points than the shape needs. Real paths, messy paths.

One icon split down the middle, half clean vector paths and half crumbling pixel blocks


One style stem, forty subjects

The single most reproducible technique in this whole article: write one style descriptor, keep it byte-identical across every prompt in the set, and change only the subject noun.

A working stem looks like this, and you can paste it as is:

Minimalist outline icon of a [SUBJECT], 24x24 grid, 2px uniform stroke, rounded line caps and joins, no fill, transparent background, single color #2563EB, centered with 1px padding, flat vector style, no shadows, no gradients, no text

Swap [SUBJECT] for search, settings, notifications, profile. Nothing else moves. Ashesh Dhakal of SVG AI published production data on this from 41 icons generated for 16 users across 7 countries: prompts sharing a verbatim stem produced a coherent set on the first generation roughly two thirds of the time, with the rest landing after one or two refinements.

Two additions earn their place. Name your hex codes explicitly, because "blue and orange" drifts across a set while #2563EB and #F59E0B don't. And generate the whole set in one session, since model updates between sessions are a silent source of drift. Style consistency across a batch of images is its own discipline, and we compared four ways to hold a style across AI images, including where seeds quietly fail.

Conditioning beats hoping

Text alone gets you most of the way. References get you the rest. As the IP-Adapter authors put it in their August 2023 paper, getting the image you want from text alone is tricky and usually means heavy prompt engineering. Their fix, a "decoupled cross-attention mechanism" for text and image features, hit performance comparable to a fully fine-tuned model with only 22 million parameters. Every consumer style-lock feature you use today is a wrapper around that line of research: Textual Inversion, DreamBooth, IP-Adapter, InstantStyle, B-LoRA.

What this looks like:

  • Midjourney's -sref applies one image's aesthetic across every subject you throw at it, with -sw tuning how hard it pushes and -sref random minting a reusable style code you can save for the next batch.
  • FLUX.1 Kontext edits from a reference at $0.04 to $0.08 per image, so you can regenerate a wonky icon while holding line weight and corner radius from the ones you already approved. GPT Image's edit endpoint accepts up to 16 reference images for the same job.
  • JammyJar Themes extract a reusable style from up to three reference images, then apply it to everything you generate afterward. Generate three icons you love, make them the Theme, run the other 21 through it.
  • Seed locking in Stable Diffusion, SDXL and FLUX pins the noise so the same prompt returns the same image. Useful for reproducibility, useless for making two different subjects match.

Pick one mechanism and commit to it for the whole set. Mixing a Theme, an --sref code and a hand-written stem across the same 24 icons reintroduces the variance you just spent an hour removing.

Ready to try it: start a set free in JammyJar, pick Recraft V4.1 Vector for genuine SVG, and extract a Theme from your first three approved icons.

Machine die pressing six different icon shapes to identical stroke thickness


Steal the numbers from Lucide, Carbon, Material and Apple

Here's the catch with generated icons: the model produces whatever geometry it produces, and "looks fine" at 512px is not a spec. Four teams have already published the numbers, for free, and they're better than anything you'll invent.

System

Canvas

Stroke

Terminals and geometry

The rule worth stealing

Lucide

24x24, at least 1px padding

2px, centered

Round caps, round joins

Ships with fill=none and stroke=currentColor baked into the defaults

IBM Carbon

16, 20, 24 and 32px

Scales 1px at 16, 1.25px at 20, 1.5px at 24, 2px at 32

No decimals in x/y coordinates

At 16px, use filled glyphs: fine strokes break at that size

Material

24dp, 20dp on dense desktop

2px

Keyline shapes, 45-degree orthogonals

Design at 100% scale, never scale up from small

Apple SF Symbols

Vector, three scales

Nine weights matched to San Francisco

Optical weight compensation

27 variations per symbol, so icons match the text beside them

Apple's contribution is the subtle one. Their guidance is that each of the nine symbol weights maps to a weight of the San Francisco system font, so a symbol sits next to a word without looking lighter or heavier than it. An equal measured stroke does not look equal across sizes. No image model respects that, which is why the last pass is manual.

Lucide proves the other half of the point: their maintainers enforce viewBox, grid and stroke rules with ESLint validation. Consistency there is a build step, not a matter of taste. Pick one of these four systems, then treat its numbers as the acceptance test your generated icons have to pass.

Four blueprint plinths showing the same icon at 16, 20, 24 and 32 pixels


Vectorize last, then clean the paths

If your generator gave you PNGs, the conversion happens once, at the end, after you've curated the set. Tracing before you've picked your final 24 icons means tracing work you throw away.

The open tracers both have known limits. Potrace handles black and white only and tends to produce patchy, broken outlines on anything soft. VTracer is the most usable of the open options and handles color, but it renders PNG transparency as a solid black background and over-fragments low-quality inputs, so you feed it clean, high-contrast, opaque-background images or you clean up afterward. JammyJar converts raster to SVG in-app for 50 credits on Megajar and above, which saves the round trip.

Then the hygiene pass, which is genuinely quick:

  • Standardize one viewBox across the set, 24, 32 or 48, and never mix them.
  • Swap hardcoded fills for currentColor so dark mode and hover states cost you nothing.
  • Snap every stroke to whole pixels. Carbon bans decimal coordinates for a reason: half-pixels are what makes a 16px icon look smeared.
  • Run npx svgo --multipass. Dhakal's measurements put AI-generated icons at a median of 9.7 KB before optimization and 5 to 7 KB after, a cut of roughly a third.
  • Generate components with SVGR if you're shipping into React or Vue, so the set arrives as imports rather than a folder of files.

Ship SVG, not an icon font. Icon fonts fail invisibly during font load, can't carry ARIA metadata properly, and lost their performance argument the moment HTTP/2 made small parallel requests cheap.

Run the accessibility checks before the set ships

Two WCAG 2.2 criteria bind icons directly, both Level AA, both W3C Recommendations since 5 October 2023.

Non-text Contrast (1.4.11) requires meaningful icons and UI components to hit at least 3:1 against adjacent colors. Purely decorative icons are exempt. That thin, elegant, 1px light-gray stroke your AI icon generator loves on a white background fails outright, which is a concrete reason to raise stroke weight rather than an aesthetic opinion.

Target Size Minimum (2.5.8) requires pointer targets of at least 24 by 24 CSS pixels, with exceptions for inline, spacing and essential cases. A 16px icon in a 16px button is a fail; the same icon in a 24px hit area passes.

The markup patterns are short. Decorative icons get aria-hidden="true". Informative ones get a <title> element plus role="img". Interactive ones live inside a <button> with an aria-label. Three lines of discipline, applied once, across the whole set.

Where AI icons still break

The design-system purists have a real case against everything above: model output is off-grid, and off-grid is unshippable. They're right, which is why the claim worth making is "AI first draft, rules-based finish" rather than "AI icon generator makes your icon set."

The recurring failures are nameable:

  • Stroke drift across the set, the most common one, and the reason the stem exists.
  • Off-grid geometry that looks clean at 256px and turns to mush at 16 to 24px, because sub-pixel placement has nowhere to go.
  • Garbled text inside icons. An envelope with a letter A on it renders beautifully large and illegibly small. Don't put glyphs in glyphs.
  • Over-detailed paths. Anything past about 30 KB stopped being an icon and became an illustration.
  • Cultural and regulatory drift on symbols that carry legal meaning, like accessibility, hazard or medical marks. Use the library, not the model.

Budget for rework. One widely cited Recraft workflow guide estimates that around 20% of a 30-icon set needs two or three regenerations, though that's an editorial estimate with no published method behind it, so treat it as a planning number rather than a fact. And to be straight about the evidence: there is no independent benchmark for AI icon quality. The only quantified consistency data we found comes from a vendor that sells an icon tool. It's transparent about its method, and it's still one source.

Row of icons where stroke weights visibly drift and the last one blurs into pixels


You can ship the icons. Owning them is a different question.

Two rules matter here, and neither is settled.

In the United States, the Copyright Office's second AI report, published 29 January 2025, holds that AI output is protectable only where a human author determined enough of the expressive elements, and that prompts alone don't appear to do that. Your arrangement, edits and selections can carry protection. The raw generation probably doesn't. Courts are still working through it case by case, so anyone telling you your generated icons are definitely yours or definitely nobody's is guessing.

In the EU, the AI Act's Article 50 transparency obligations apply from 2 August 2026, with the Article 50(2) machine-marking requirement extended to 2 December 2026 for systems already on the market. Penalties for transparency breaches reach €15 million or 3% of worldwide turnover.

Then there's the tool's own license, which catches more people than the law does. Recraft's free plan makes your images publicly visible in the community gallery and doesn't license them for commercial use; the paid plans grant full ownership and commercial rights. Free tiers are where icon sets go to become somebody else's mood board. We went through the tool-by-tool position in what you can actually do commercially with AI images in 2026.

How we'd build a 24-icon set in one sitting

Open one prompt box. Write the six-line rule sheet. Generate three icons with the stem using Recraft V4.1 Vector, since that's the model in JammyJar that returns a genuine editable SVG with clean layers rather than a bitmap in disguise. Look at those three side by side at 24px, not at full size.

When they match, extract them as a Theme and run the remaining 21 subjects through it, all in one session. Curate hard: keep the ones that pass your stroke and grid rules, regenerate the rest against the same stem. Export as SVG, or convert any raster stragglers in-app for 50 credits. Then SVGO, then the contrast and target-size checks, then it's a design system.

An afternoon, start to finish. The generation is the fast part. The rules are what make it a set.

AI icon generator FAQ

Can an AI icon generator really make a consistent icon set?
Partly. A shared style stem produces a coherent set on the first try roughly two thirds of the time, based on SVG AI's published data from 41 production icons. The remaining third needs regeneration, and the whole set needs a grid and stroke check before it ships. Treat AI as the first draft and a design-system spec as the acceptance test.

Which AI tools output real SVG rather than PNG?
Recraft generates native vector with editable paths and anchor points, and JammyJar exposes it as Recraft V4.1 Vector. GPT Image, Gemini, Midjourney, FLUX, Grok and Krea are raster-only, so their output needs converting with a tracer or an in-app raster-to-SVG step. Check any file by searching it for <image or base64.

What stroke width and grid should I use for icons?
Follow a published system. Lucide uses a 24x24 canvas with a 2px centered stroke and round caps and joins. IBM Carbon scales stroke by size: 1px at 16px, 1.25px at 20px, 1.5px at 24px, 2px at 32px, and switches to filled glyphs at 16px. Material designs system icons at 24dp with 2px strokes.

Can I use AI-generated icons commercially?
Usually yes, but ownership is separate from permission. The US Copyright Office's January 2025 position is that purely prompt-generated output lacks the human authorship copyright needs. Check the tool's license too: Recraft's free plan publishes your images to a public gallery without commercial rights, while its paid plans grant full commercial ownership.

How do I fix icons that don't match after generating?
Don't rewrite the prompt from scratch. Feed an approved icon back as a reference through Themes, --sref or an editing model like FLUX.1 Kontext, and regenerate only the subject that drifted. That holds stroke weight and corner radius from the icons you already accepted, instead of rolling the dice again.

Line them up again

Go back to those eight icons sitting in a row, looking like eight different apps. Nothing about the model caused that. The set had no rules, so the model supplied forty of its own.

Write the six lines. Freeze the stem. Generate the whole set in one sitting, condition the strays on the ones you kept, and let Lucide or Carbon tell you whether it's finished. AI drafts the set; the grid is what ships it.

Start with three icons this afternoon. If they still match at 24 pixels, you have a system.

You've reached the end.Better go make something.

Sign up