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.

ProdFill Advanced Mode interface
Select an Excel file and choose Fill by row or Fill by column.
ProdFill Advanced Mode field prefixes
Excel headers define frame, image, component, and rename operations.

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.

FramePic Product#Stack(-8)Pic Gift#Scale(0.8)Benefit#Hide(1)Label#Each#Hide(1)Price#Dot(32)Product NameCom Price Axis
XXXXXXXXXXXXXXX
XXX
XXXXXXLength=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.