A step-by-step walkthrough of every feature in the Figma plugin and the Roblox Studio plugin, organized from the basics to advanced and beta tools.
The core workflow, without any extra toggles.
Add the Figma plugin from the Figma Community and the companion plugin to Roblox Studio from the Creator Store.
Select one frame, group, or layer (or several at once) — whatever you want to bring into Roblox.
The Export tab turns your selection into Roblox-ready data and shows it in the code box.
Click Copy to put the exported data on your clipboard.
In Roblox Studio, select a ScreenGui in the Explorer, open the Fireporter widget, paste the code into the text box, and click Import.
These live in the top row of the Export tab. They're switched on by default and cover what most exports need.
Carries Figma borders/outlines over as a Roblox UIStroke, matching color, thickness, and inside/center/outside alignment.
Accounts for shadows and blurs when measuring a layer, so exported sizes and positions match what you see in Figma instead of just the raw layout box.
Converts pixel sizes and positions into scale values, so your UI adapts across different screen resolutions in Roblox instead of staying a fixed pixel size.
Exports linear gradient fills as a Roblox UIGradient, keeping stop colors, positions, and rotation.
Keeps text layers as real, editable TextLabel instances instead of flattening them into images.
Turns on Roblox's TextScaled, so text resizes to fit its container across screen sizes.
Keeps outlined/stroked text styling from Figma on the exported TextLabel.
If a text layer uses a font Roblox doesn't support, this automatically rasterizes just that layer into an image instead of breaking the export.
Tools that take a bit more setup — naming conventions and account connection — but give you more control over the result.
Open the Tags tab, select a layer in Figma, and click a tag to add it to the layer's name (click again to remove). Tags tell Fireporter exactly which Roblox instance type to build, overriding the automatic guess.
| Tag | Result in Roblox |
|---|---|
| _frame | Frame |
| _text | TextLabel |
| _button | TextButton / ImageButton |
| _box | TextBox |
| _scroll | ScrollingFrame |
| _canvas | CanvasGroup |
| _gradient | Forces a UIGradient even outside frames |
| _lock | Adds a UIAspectRatioConstraint |
| _grayscale | Recolors that layer to grayscale on export |
| _ignore | Skips the layer entirely |
The Assets tab lets you upload your own images or whole folders, organize them, and apply one directly onto a selected Frame or Rectangle in Figma without leaving the plugin. Assets are stored only on your device.
Required for Live Mode and for auto-uploading images. Go to the Account tab and log in with Roblox — this only grants access for delivering exports and uploading images, as described in the privacy policy.
Found a bug or need help? Open the Support tab and click Create a Support Ticket. Pick a category, describe the issue, attach a screenshot, video, or Figma/Roblox file if it helps, and leave your email so the developer can reply directly.
The second row of toggles in the Export tab. These work, but are newer and may change — expect occasional rough edges.
Generates cleaner instance names from tags or text content instead of raw Figma layer names, and automatically de-duplicates identical sibling names.
Exports Figma drop shadows as a Roblox UIShadow, carrying over blur radius, offset, spread, color, and transparency.
Exports individually rounded corners as a Roblox UICorner, instead of forcing one uniform radius on all four corners.
A cleanup pass before export: rounds positions/sizes to whole pixels, snaps spacing to an 8px grid, rounds corner radii to common steps, and aligns sibling edges and text baselines.
A more hands-off export: structural layers default to Frame and text defaults to TextLabel without tagging, images are automatically rasterized, and — if you're logged in — automatically uploaded to Roblox for you.
Right-click the Filter toggle to choose grayscale or a custom tint color, and which element types it applies to (text, frames, image labels, image buttons). Only affects Live Mode exports.
Requires a connected Roblox account. Sends your export straight to an open Roblox Studio session over the network — no copy-pasting JSON. Studio polls automatically and builds the UI as soon as it arrives.
Once your UI is imported, the Studio-side widget also has some controls of its own.
Select any GuiObject in the Explorer (or use the instance you just imported) and click one of the 9 grid cells to instantly snap it to that screen anchor — top-left, center, bottom-right, and so on — using AnchorPoint and scale Position.
The widget shows which instance the position controls currently target, updating automatically as your Explorer selection changes or right after an import.