populate-template
Batch-create personalized compositions by duplicating a template for each data row and populating its layers with that row's values, handling text, footage, and properties.
Instructions
Duplicate a template composition once per row of a data table, populating each duplicate from that row's values - the batch/bulk version of manually editing one composition (personalized ads, product cards, name badges, anything repeated with different content). Each row can drive text content (with the same Arabic/RTL auto-detection as localize-comp), an image/video source (imported from a file path), or any layer/effect property value (reusing the same targeting scheme animate-to-audio/animate-from-data use). Layers nested inside precompositions are reachable via path, and each precomposition on that path is safely duplicated per row (never edited in place), reusing the same precomp-duplication logic localize-comp uses. Chain with render-aerender afterward, once per created composition, to batch-render every variant.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rows | Yes | One entry per output composition (max 500, one row becomes one duplicated composition). Each row is a flat {field: value} object; `bindings` below decides which fields drive which layers. | |
| bindings | Yes | One entry per layer to populate. Applied to every row. | |
| compName | No | Template composition name (or the active comp if omitted). | |
| compIndex | No | 1-based index among compositions, if compName is omitted. | |
| namePattern | No | Name for each created composition, with {field} placeholders substituted from that row's values (e.g. '{name} ad'). Defaults to '<template name> <row number>', also used as the fallback if a placeholder's field is missing from a row. |