Copy and Paste from Figma to Studio

View as Markdown
Last updated July 17, 2026

Studio supports pasting a Figma frame directly into the canvas. Studio converts the Figma nodes into a composition tree; no code generated, no developer involved.

Useful for: - One-off marketing pages where the design lives in Figma - Prototyping a layout that matches a design before deciding which components it'll use - Quickly turning a design system frame into a Studio composition

The Flow

  1. Open the Figma file. Select the frame you want to bring in.
  2. Copy it: ⌘C / Ctrl+C.
  3. Open Studio. Open or create a composition. Click into the canvas.
  4. Paste: ⌘V / Ctrl+V.
  5. Studio creates a composition tree mirroring the Figma layout.

After paste, the result is a regular composition. You can edit it, drop in registered components, bind to data, save, deploy, same as any other.

What Translates

Figma elementBecomes in Studio
FrameA Box container with the frame's layout (flex / grid / auto-layout)
Text layerA Text component with the typography styles preserved
Rectangle / shapeA Box with the fill / border styles
ImageAn Image component with the image asset embedded
GroupA Box wrapper
Auto-layoutTranslated to flex with matching gap, direction, alignment

What doesn't (cleanly) translate

  • Interactive prototypes: Figma's click-through arrows have no equivalent
  • Custom plugins or smart components: only the rendered result comes across
  • Variants / component sets: the selected variant is what you get; not a switchable component
  • Constraints and responsiveness: bring across as best-effort fixed layouts

For these cases, the generate components path is a better fit. It produces real React components instead of one-time composition trees.

When to copy/paste vs. when to generate

Use copy/paste when…Use generate when…
The Figma frame is a one-off layout for one pageThe Figma file defines reusable design-system components
You want a quick visual import to start editingYou want first-class React components for the long haul
The result is for a single compositionYou want to register the components and reuse them across many compositions
You're a designer or content authorYou're a developer maintaining the component library

After paste: next steps

The pasted result is a tree of Boxes, Text components, and Images. Common follow-ups:

  • Replace generic Box wrappers with your registered components. A "Hero" frame from Figma becomes Box+Text+Image after paste; manually swap the Box for your Hero component to get back to your design system.
  • Bind text to entry data. Paste preserves the literal text from Figma; bind those to the connected entry's fields so the page renders real content.
  • Refine spacing using Studio's Design panel. Figma's pixel-precision sometimes generates verbose CSS; review padding and gap values and consolidate them to your spacing scale.

Figma file conventions that help

If your design team uses these patterns in Figma, paste-to-Studio produces cleaner results:

  • Use Auto-layout instead of free-positioning. Auto-layout translates cleanly to flex/grid, reducing manual fixes after import. Free-positioned layers arrive as absolute-positioned elements that won't reflow.
  • Name layers meaningfully. "Hero", "Card", "CTA"; names carry through to the Layers panel in Studio, making it easier to navigate and replace Box wrappers with your registered components.
  • Keep frames at reasonable sizes. 1440 × N for desktop, 375 × N for mobile. Studio uses the frame's width as the artboard size, so a frame wider than typical screen widths produces an oversized canvas.

Copy/paste uses the Copy to Studio button from the Studio Figma Plugin, which puts composition JSON on your clipboard. The plugin has three additional outputs for deeper workflows. See Figma: generate components for the full plugin breakdown, including CLI setup and Auto Map. For this copy/paste flow, no developer CLI setup is needed; install the plugin from the Figma Marketplace and authorize it against your Contentstack account.

Plugin outputWhat it producesWhen you'd use it instead
Copy to StudioComposition JSON for one Figma frameThis page's flow: one-off layout into one composition
Copy CLI CommandA ready-to-run csdx studio:component:add invocationWhen you want real, committable React components instead of a pasted tree
Import Design TokensStudio-side token registrationWhen the Figma file's color/typography/spacing tokens should flow into Studio's token system
Copy CSS Variables--token-name: value declarationsWhen the project consumes tokens through plain CSS rather than Studio's token system