Automations — conditional rules for your template

Automations let a template show, hide, or swap content automatically based on product or project data — build rules like a sale-price swap or seasonal visibility without touching bindings by hand.

Updated October 7, 2026

Automations are conditional rules that run per product when your template is rendered. Each automation checks a trigger — a condition against product or project data — and, when it matches, applies one or more actions to an element or placeholder. By default, when the trigger doesn't match, a SHOW action automatically reverses to hide the element (and a HIDE action reverses to show it) — you get the opposite case for free, without building a second rule. You can change this default behavior for a given automation; see Else-branches below.

Automations are what make a single template adapt across your whole catalog: the same layout can hide a "Free shipping" badge for one product, show a "Sale" ribbon for another, and swap in a different headline for a third — all from one set of rules, no manual per-product editing.

Three of the actions#

Some of the actions an automation can use:

  • SHOW — makes an element or placeholder visible.
  • HIDE — makes an element or placeholder invisible.
  • SET — replaces a placeholder's value with something else. SET never touches visibility — it only changes what shows, not whether it shows. Use SHOW/HIDE and SET together when a rule needs to do both (for example: show a badge frame, and set its text to "Clearance").

Triggers and conditions#

A trigger is a condition evaluated against the product or project data behind the current render — for example, a price comparison, a stock/availability flag, a category match, or a date range. When the trigger's condition is true, the automation's actions run as written. What happens when the trigger is false depends on the "Otherwise..." setting described next.

A condition can also test a custom attribute — an attribute your feed carries beyond the standard fields. In the condition's field menu, pick it from the Custom attributes group, or choose Use another attribute… and type its name exactly as your feed spells it; the chip then reads Attribute: and the name. The condition compares that attribute's value as text. A product that doesn't have the attribute reads as empty, so is blank is true for it. Aimée can write these conditions for you too. See Custom attributes.

When the condition compares a number, a number you type as the value reads the same in every catalog: a dot or a comma is the decimal separator, so 1,50 becomes 1.5 when you leave the box, and 1.000 becomes 1. Thousands separators and units are not read — type 1000, not 1 000 or 12 kr — and the condition says so under it.

A date condition reads is before, is on or before, is after, is on or after or is between. You pick the date and time in a calendar, shown in your own time zone, and the condition compares against that exact moment — so Today's date is before 27 Sep 2026 23:00 stops matching at 23:00 your time on that day, not at midnight. To compare with another date instead of a fixed one (for example the sale end date), click the { } button next to the date. If a date typed there can't be read as a date, Publish stops and names the rule, instead of the condition silently never matching.

A date condition can also compare with a day counted from today: click the clock button next to the date (Compare with N days ago instead) and choose a number of days ago or days from now, or today — for example sale end date is before 7 days from now. It is checked when the product's ad is next rendered, not at midnight; see Rules that depend on dates.

Else-branches#

Every automation has a 3-option "Otherwise..." dropdown that controls what happens when the trigger is false:

  • "Otherwise, reverse show/hide" (the default) — SHOW actions become HIDE and HIDE actions become SHOW when the trigger doesn't match. This is a true reversal, not "nothing happens": if your automation's action is SHOW, an inactive trigger actively hides the element. SET actions aren't reversible in this mode, so they simply don't run.
  • "Otherwise, do nothing" — the actions only ever run when the trigger is true; nothing changes when it's false. Use this when you want a rule that only ever adds behavior (for example, a SET that should never be undone by this same rule).
  • "Otherwise..." — reveals a separate list of else-actions with their own Add action button, so you can define genuinely different behavior for the false case (not just a visibility flip) — for example, show a "Sale" badge when a product has a discount, or show a "New" badge when it doesn't, from a single rule.

Because "reverse show/hide" is the silent default, a plain SHOW or HIDE automation is already a complete either/or rule — you only need the custom "Otherwise..." option when the false case needs to do something other than the opposite visibility.

Where to build automations: the Automations panel#

Automations live in the Automations panel — docked on the right by default, in the same group as Elements and Settings (you can move it anywhere).

  • The panel lists every automation on the template.
  • Drag to reorder — automations run in list order, which matters when more than one rule can affect the same element or placeholder (a later rule can override an earlier one).
  • Click an automation to open it and edit its trigger, actions, and else-actions.

Simulate: preview without real data#

Each automation has a simulate toggle. Flip it to force that automation's condition to true or false on the canvas — instantly seeing what the template looks like with the rule active or inactive, without needing to load a real product that happens to match. This is the fastest way to sanity-check a rule's visual effect while you're still designing it, before testing it against real products in Preview.

Common patterns#

Sale-price swap. Trigger: product has a discounted price lower than its regular price. Action: SET the price placeholder's text to the discounted price. If you're using a separate "was" price element, add a second automation on the same trigger with a SHOW action — the default "reverse show/hide" behavior hides it automatically when there's no discount, with no else-branch needed.

Seasonal visibility. Trigger: current date falls within a campaign window (or a project/product flag you set for the season). Action: SHOW a seasonal badge or banner element. Leave the default "Otherwise, reverse show/hide" in place — it hides the badge for products outside the window without any extra configuration.

Conditional visibility by stock or category. Trigger: product is out of stock, or belongs to a specific category. Action: HIDE the "Add to cart" badge, or SHOW a category-specific callout — again, the default reversal handles the opposite condition.

In every case, the automation logic is the same: pick a condition tied to product/project data, and decide what should be visible or what value should show when it's true. A plain SHOW or HIDE action already covers the false case for free via the default reversal — reach for the custom "Otherwise..." option only when the false case needs genuinely different behavior, like swapping in a different badge rather than just hiding one.

Where to go next#

  • Placeholders — automations and placeholders work together: SET actions replace placeholder values, and SHOW/HIDE toggle the visibility of elements bound to placeholders.
  • Sizes and formats — automations are shared across every size on a template, so a rule you build once applies everywhere.
  • Studio overview
  • Working with Aimée — Aimée can create and edit automations conversationally.