# Figma sync and cache-only mode

> How KopiMark talks to the Figma API, why your Figma seat type triggers rate limits, and what cache-only mode lets you keep doing offline.

_Source: https://kopimark.com/docs/concepts/figma-sync-and-cache/_

KopiMark fetches your designs from Figma's REST API using a **personal
access token** that you provide. This page explains what that means in
practice, when KopiMark will fall back to cache-only mode, and how your
Figma seat type affects everything.

If you just want to set the token up, jump to [Connect
Figma](/docs/guides/connect-figma/) — this page is the *why*.

## Two states: live or cache-only

Every account is in one of two modes at any given time:

- **Live (Figma API on)** — KopiMark can fetch fresh node trees, images,
  and metadata from Figma whenever you import a page, re-sync, or open the
  editor. This is the default once you've added a token.
- **Cache-only** — KopiMark won't call Figma at all. It only reads what's
  already in its own cache: node JSON, rendered images, screenshots. You
  can still edit copy, translate, comment, and export. You just can't pull
  in new Figma changes until you go back online.

You can flip the toggle yourself from [Profile
settings](/docs/settings/profile-settings/), or KopiMark may flip it for
you (more on that below).

## When KopiMark turns on cache-only for you

If a Figma API call from your token gets rate-limited (HTTP 429), KopiMark
turns on cache-only mode automatically and shows a yellow banner on your
profile:

> We turned this on for you because Figma rate-limited a recent request
> from your token. You can turn it back off below if you believe it was a
> transient spike.

This isn't a punishment — it's a safety valve. Repeatedly hammering an
already-throttled token makes things worse. The toggle is yours to flip
back the moment you think the spike is over.

If you've **never added a Figma token**, cache-only mode is locked on
(you'll see a gray banner instead of a yellow one). You can still use the
demo project, since its cache was baked at signup.

## Why rate limits happen — the seat type

Here's the part most teams don't realise until they hit it: **Figma's API
rate limit depends on your Figma seat type, not your KopiMark plan**.

In rough terms:

- **Figma Editor / Full seat** — generous per-token API quota. Comfortable
  for any team size.
- **Figma View seat** — much lower quota. Importing a large file or
  re-syncing a busy project can exhaust it.
- **Figma Collab seat / Dev mode** — lower again. KopiMark works, but you
  should expect occasional cache-only switches under load.

If you only have a View or Collab seat, you have three reasonable options:

1. **Ask the file owner** to generate a token from a paid Editor seat and
   use that one. Tokens belong to the person who issued them, not to the
   file.
2. **Stay in cache-only most of the time** and only flip live briefly to
   re-sync.
3. **Upgrade your Figma seat** to a paid Editor.

There's more detail in [If your Figma seat is limited (View /
Collab)](/docs/guides/figma-seat-and-rate-limits/).

> _[image placeholder: Side-by-side comparison of Figma]_

## What stays available in cache-only

Everything that doesn't require fetching from Figma:

- Open any cached page in the editor
- Edit copy and translations (changes save to KopiMark, not back to Figma)
- Post and resolve comments
- Assign statuses and mention teammates
- Export copy and translations
- Use the AI translation tool — it doesn't call Figma at all

## What's blocked in cache-only

Anything that needs a fresh fetch:

- Importing a new Figma page into a project
- Re-syncing a page after the designer changed it in Figma
- Updating an image whose Figma source has changed

If you try one of these, KopiMark will surface a clear error pointing back
to your profile.

## What KopiMark caches

For each page you've imported at least once, KopiMark stores:

- The node tree (text, layout, hierarchy) as JSON
- Rendered PNG and SVG of the page at the size shown in the grid
- The screenshots used in language preview

That's enough for everyone except the designer to keep working, which is
why cache-only is a graceful fallback rather than a hard stop.

## See also

- [Connect Figma](/docs/guides/connect-figma/) — generate and paste your
  token.
- [If your Figma seat is limited](/docs/guides/figma-seat-and-rate-limits/)
  — workarounds if you can't use an Editor seat.
- [Profile settings](/docs/settings/profile-settings/) — where the toggle
  lives.

---

## All documentation

_The full docs index, in case the answer lives on another page. Fetch any item as raw Markdown by appending `.md` to its URL, or grab everything at once from https://kopimark.com/llms-full.txt._

### Start here

- [Introduction](https://kopimark.com/docs/)
- [Getting started](https://kopimark.com/docs/getting-started/)

### Concepts

- [How KopiMark works](https://kopimark.com/docs/concepts/how-kopimark-works/)
- [Figma sync and cache-only mode](https://kopimark.com/docs/concepts/figma-sync-and-cache/) _(this page)_
- [Roles and workspaces](https://kopimark.com/docs/concepts/roles-and-workspaces/)

### Guides

- [Connect Figma](https://kopimark.com/docs/guides/connect-figma/)
- [If your Figma seat is limited](https://kopimark.com/docs/guides/figma-seat-and-rate-limits/)
- [Invite your team](https://kopimark.com/docs/guides/invite-your-team/)
- [Translate with AI](https://kopimark.com/docs/guides/translate-with-ai/)
- [Review with comments](https://kopimark.com/docs/guides/review-with-comments/)
- [Statuses and approvals](https://kopimark.com/docs/guides/statuses-and-approvals/)
- [Custom fonts](https://kopimark.com/docs/guides/custom-fonts/)
- [Export copy](https://kopimark.com/docs/guides/export-copy/)
- [API and developer tokens](https://kopimark.com/docs/guides/api-and-developer-tokens/)

### Settings

- [A tour of Settings](https://kopimark.com/docs/settings/tour/)
- [Profile settings](https://kopimark.com/docs/settings/profile-settings/)
- [Workspace settings](https://kopimark.com/docs/settings/workspace-settings/)
- [Project settings](https://kopimark.com/docs/settings/project-settings/)

### Reference

- [Plans and limits](https://kopimark.com/docs/reference/plans-and-limits/)
- [Keyboard and canvas](https://kopimark.com/docs/reference/keyboard-and-canvas/)
