Blog

Why Migrate Your Tokens from Figma?

May 13, 2026 · BaseFrame

Your Token Source of Truth Doesn't Belong in Figma and it doesn't belong buried in your codebase either.

There's a quiet assumption baked into most design systems workflows: that Figma is where design decisions live. Variables get defined there. Tokens get named there. And somehow, some way, those values make their way into code — through a plugin, a handoff doc, a Slack message, or sheer willpower.

It mostly works. Until it doesn't.

The Problem With Figma as Your Token Source of Truth

Figma is a design tool. A brilliant one. But it was built for visuals, not for systems.

When you store your design tokens in Figma — as variables, styles, or through a plugin like Tokens Studio — you're anchoring your most foundational system decisions inside a tool that:

Doesn't version control tokens the way engineers expect. Figma has file history, but it's not Git. There's no diff, no changelog, no way to trace why color.surface.default changed from #F5F5F5 to #FAFAFA six weeks ago.

Treats tokens as a Figma-first concept. Figma Variables are scoped to Figma. They exist to power Figma designs. Exporting them to your codebase is an afterthought — one that requires plugins, manual steps, and a lot of hoping the sync worked.

Creates a dependency on designers as gatekeepers. If a token lives in Figma, a designer has to touch Figma to update it. That's a bottleneck. Tokens aren't just design decisions — they're engineering decisions too. border-radius.interactive affects every button in your product. It shouldn't require opening a design file to change it.

Breaks when Figma changes. Figma has already changed how Variables work once. It'll happen again. If your token architecture is Figma-native, you're building on someone else's roadmap.

The deeper issue: tokens are data. Structured, semantic, reusable data. They belong in a format built for data — not embedded in a proprietary design tool.


Code Isn't the Answer Either

The alternative most engineering-led teams reach for is storing tokens directly in code — usually as a JSON file or a Style Dictionary config checked into the repo.

This works better than Figma from a versioning standpoint. But it creates a different problem: designers can't touch it.

Now your token source of truth is locked behind a pull request workflow. Want to adjust your brand's primary color? That's a code change, a review, a merge. For a hex value.

Teams end up in one of two states:

  1. Designers own tokens in Figma, engineers re-implement them in code. Two sources of truth. Drift is inevitable.
  2. Engineers own tokens in code, designers work around them. Design becomes a lagging indicator, never the source.

Neither is right. Both are symptoms of using the wrong tool for the job.


Tokens Need a Dedicated Home

The W3C Design Token Community Group (DTCG) has been working on a standard for a reason: tokens deserve a format and a workflow built specifically for them.

That format is JSON. Structured, portable, tool-agnostic JSON.

And tokens deserve a tool that treats them as the primary artifact — not a side effect of a design tool or a config file in a repo.

That's what BaseFrame is built to be.


Why BaseFrame Is the Right Alternative

BaseFrame is a token editor built on top of the W3C DTCG token format. Your tokens live as JSON — the actual source of truth — and BaseFrame gives both designers and engineers a clean, structured interface to manage them.

It's format-native. Tokens are stored as standard DTCG JSON. Not a Figma-proprietary format. Not a plugin-specific schema. The format the spec is converging on.

It supports the full token hierarchy. Primitive tokens, semantic tokens, composite tokens — all in a nested, indented editor that makes parent-child relationships visible and manageable. The interface is cleaner and less overwhelming than Tokens Studio, which has become complex and expensive for what it offers.

Reference Chain and Token Health are two features that address the part of token management that always breaks down: references. Reference Chain lets you trace exactly where a token's value comes from — follow the chain from a semantic token all the way back to its primitive. Token Health flags broken references before they cause problems in production. No more silent failures where a token points to nothing.

Import is flexible. Drop in DTCG JSON natively. Have tokens in another format? BaseFrame uses AI to parse and convert them on import. It meets you where you are.

Export goes where you need it. JSON, Style Dictionary, Tailwind — BaseFrame outputs to the formats your build pipeline already uses. No custom scripts, no brittle middleware.

The Figma plugin pushes tokens to Figma — not the other way around. Figma becomes a consumer of your token system, not the owner of it. Update your tokens in BaseFrame, push to your Figma files. Outdated tokens get flagged and updated. Figma stays in sync without being in charge.

Generate token sets from brand images. Upload a brand image and BaseFrame derives a token set from it — a fast starting point for teams building a design system from a visual identity rather than from scratch.

Accessibility checks and token set templates are on the roadmap. The foundation is being built to be a complete token management platform, not just an editor.


The Right Mental Model

Figma should receive your tokens. Your codebase should consume your tokens. But neither should own them.

Your token source of truth should live in a dedicated, format-standard, tool-agnostic system that both designers and engineers can work with — one built specifically for the job.

That's BaseFrame.

Join the waitlist at baseframe.dev →