Advanced Mode
Use Excel to fill images, text, and components at scale with AutoFit, AutoGap, and other automation rules.
Advanced Mode uses one Excel file to fill images, text, components, and frames at scale. Field prefixes and suffix rules can be combined for more complex automation.


Upload an Excel file
Excel headers map data to Figma layer names. The Figma layer keeps only the actual field name; do not include the Pic or Com header prefix in the layer name.
| Frame | Pic Product#Stack(-8) | Pic Gift#Scale(0.8) | Benefit#Hide(1) | Label#Each#Hide(1) | Price#Dot(32) | Product Name | Com Price Axis |
|---|---|---|---|---|---|---|---|
| XXX | XXX | XXX | XXX | XXX XXX | XXX | XXX | Length=Long, Color=Red |
Download the dynamic layout example
Fill by row or column
- Use Fill by row when field names are in the first row. This is common for product listing images.
- Use Fill by column when field names are in the first column. This is common for long-form detail pages.
Header prefixes
Frame: target a frame
When a Frame column exists, each row fills the frame with the matching name. Without it, ProdFill processes targets in visual order.
XXX: fill text
Headers other than the reserved system prefixes are treated as text layer names.
Pic XXX: fill images
A header beginning with Pic defines an image field. Name the Figma layer XXX. Multiple lines in one cell insert multiple images into the same container.
Com XXX: switch component variants
A header beginning with Com selects a matching component variant before ProdFill inserts images and text.
Name XXX: rename nodes
Rename supported image, rectangle, text, or frame nodes from spreadsheet values.
Position XXX: move nodes
Enter 120,36 in a cell to set the target x/y coordinates within its parent. An empty cell leaves the node in place.
Image and visibility rules
#PasteFill: replace an image inside a component
Replace an image placeholder inside a component or instance. One layer accepts one image. Combine it with #Web to use an image URL.
#Hide(n): hide empty layers
When a field has no data, #Hide(0) hides the current layer, #Hide(1) its parent, and #Hide(2) its grandparent.
#Scale(0.8): scale assets
The number is the scale ratio. Images, groups, and frames can be scaled; resize a component through its main component.
#AutoFit: fit an asset to an edge
Preserve the aspect ratio while filling the fixed width or height of the container. Set at least one fixed container dimension.
#Web: use web images
Fill from supported Alibaba and JD image URLs. Auto Layout containers need fixed width and height.
Automatic layout rules
#Stack(-8): group repeated products
When the same product ID appears more than once, create a horizontal Auto Layout group. The number controls the gap.
#AutoGap: dynamic layout
Available with the Brand plan. Product gaps automatically expand for sparse content and tighten for dense content. The container needs a fixed width.
#AutoGapGroup(XXX): coordinate multiple containers
Use with #AutoGap. Containers with the same group name participate in one layout and must share a fixed-width parent.
Text formatting rules
#Each: fill repeated nodes line by line
When multiple text nodes share a name and the cell contains multiple lines, each line fills the next matching node.
#Dot(32): decimal font size
Keep the integer at its original size and apply the specified font size to all following characters.
#Comma(32): thousands-separator font size
Apply the specified font size to commas used as thousands separators.
Rules can be combined
For example: Pic Hero#PasteFill#Web. Keep prefix and rule spelling unchanged, and test with one row before processing a full batch.
