Fixing Your Feed Data with Rules

Feed rules are conditions plus actions that clean and reshape your product feed before it reaches your ads — set or remove fields, exclude products, split variants, group products. Edits stay in a draft until you publish.

Updated July 27, 2026

Rules let you clean up and reshape your incoming product feed before it reaches your ads. A rule is a set of conditions plus one or more actions — for example, when a column contains a certain value, set a field, remove it, or drop the product. Your edits stay in a draft and don't take effect until you Publish.

What a rule is#

A rule has two parts: conditions that decide which products it applies to, and actions that change those products' data. Read a rule as one sentence — when these conditions are true, do these actions. A rule with no conditions runs for every product; the editor shows the caption "Always — no conditions, this runs for every product."

Rules live on a catalog's Rules tab. Open a catalog from your project's Catalogs list, then choose Rules.

Conditions: which products a rule applies to#

Each condition compares one of your feed columns against a value. The comparisons available depend on the column's type:

  • Text columns: contains, doesn't contain, is exactly, is not, is blank, is not blank, matches pattern, doesn't match pattern — each with an ignore-case variant.
  • Number and date columns add the range comparisons: is less than, is at most, is greater than, is at least, is between.
  • True/false columns use is true or is false.

You can combine conditions in one level of groups — an ANY OF group matches when any condition inside it is true, an ALL OF group when they all are — and join the top-level items with AND or OR.

The actions a rule can take#

A feed rule can do any of seven things to the products its conditions match:

  • Set field — write or overwrite a catalog field's value. The value can be fixed text, another column, or a value you build up step by step (see below).
  • Remove field — clear a field's value.
  • Exclude product — drop the product from this catalog entirely, so it never reaches any channel or ad.
  • Split into variants — turn one feed row into several products, one per size, color, or other variant. This is a feature in its own right — see Splitting variants into products.
  • Group products — collect the products that share a group key, then either add values computed across the whole group to every one of them or keep just one product per group. Also a feature in its own right — see Grouping products.
  • Apply ruleset — run a shared, reusable set of rules you maintain on the Rulesets page and apply to as many catalogs as you like. (Rulesets are sometimes called shared or master rulesets elsewhere.)
  • Map product fields — write a value straight to a product field (Title, Price, an attribute…) from inside a rule, so it only happens for the products the rule matches. Your mapping is the default for every product; a rule that maps a field wins for the products it matches — and if more than one rule maps the same field, the one lower in the list wins.

The "Otherwise…" branch#

Every rule has an "Otherwise…" setting that decides what happens to the products its conditions don't match. Its simplest form is "Otherwise, do nothing" — the rule only ever acts on products that match. Open the "Otherwise…" branch instead to add a second set of actions for the products that didn't match, so one rule can handle both cases at once — set a field one way for matching products and another way for the rest. Otherwise-actions are limited to Set field, Remove field, Exclude product, and Group products. Split into variants and Apply ruleset rules have no "Otherwise…" branch at all — each replaces the product row wholesale, so there's nothing left to fall through.

Putting Group products in the "Otherwise…" branch groups the products the conditions don't match, which is how you handle a group key that's blank on some products — see Grouping products.

Rules run in order#

Rules run in the order they appear on the Rules tab, top to bottom, and each rule sees the result of the ones above it. If one rule sets a field and a later rule reads or overwrites the same field, the later rule works from the already-changed value — not the original feed value. Arrange your rules so any rule that depends on another's output comes after it.

When more than one thing writes the same product field#

A product field can be written from more than one place: your catalog's Mapping, a Map product fields action in a rule, and any rule that arrives from a Ruleset the catalog applies. The order is the one above — rules run top to bottom, then the mapping fills in whatever is still empty — so the last rule to write a field wins, and your mapping covers the products no rule claimed.

Each row of a Map product fields action carries a menu for changing that on a single field:

  • Always set — write the value regardless of what came before, replacing it. For a field that holds one value (like Title or Price) this is what a rule normally does, so it's the default there.
  • Only if not already set — write it only when nothing earlier produced a value for that field. This is how you write a fallback rule: if nothing has set the title yet, set it from this column.
  • Add to the list — add your value to what's already there instead of replacing it. Offered only for fields that hold several values (additional images, reasons to buy, product attributes) — and for those, adding is what a rule normally does, so it's the default.

A value that comes back empty never counts as written: it doesn't overwrite an earlier value, and it doesn't stop a later rule — or your mapping — from filling the field.

The same three choices appear per field on the Mapping tab, where a single-value field instead defaults to Only if not already set — your mapping fills in what no rule claimed. See Mapping your feed to catalog fields.

Cleaning up values step by step#

When a rule sets a field, you don't have to write the final value by hand — you can build it up with "+ Add step". Each step transforms the running value: trim whitespace, replace text, change case, strip HTML, round a number, format a date, or map one set of values onto another, among others. Steps run in sequence, so you can, for example, strip HTML from a description and then trim the leftover whitespace. The same value editor appears anywhere you set a field. A Sample product picker at the top of the editor shows each step's result for a real product — switch products, or type a sample value of your own, to check the steps against different data.

To convert many source values into correct ones in bulk — say, mapping your own category names onto the categories an ad network expects — pair the Map values step with a mapping table. See Mapping tables.

Your changes aren't live until you Publish#

This is the one thing that trips people up. Everything you change on the Rules tab — and everywhere else in the catalog workspace — is saved to a draft. Nothing reprocesses, and no channel or ad sees your changes, until you Publish.

That has an important consequence for imports: "Import now" uses your last published configuration, not your draft. The "Import now" button sits in the health strip at the top of the catalog page. If you have unpublished changes and click it, Renable warns you — "Importing now uses your last published configuration — your current edits won't be applied until you publish" — and offers three choices:

  • Cancel — don't import.
  • Import anyway — import using the last published rules; your draft edits are ignored.
  • Publish & import — publish your draft first, then import with the new rules applied.

So when you've been editing rules and want to see them take effect, choose Publish & import (or publish, then import). If you only want to refresh your data without applying draft edits, Import anyway is fine.

To throw away draft edits and go back to what's live, use Revert — your current draft changes are saved to history first, then reset to match the published configuration.

Checking a rule did what you expected#

Two things confirm your rules behave:

  • Each rule shows how many products it matched on the last import. A rule that never matches any product is called out with a "never matched" warning worth checking.
  • Trace a product (on the Rules tab toolbar) walks a single product through every rule in order, showing which rules applied and how each field changed, ending in the final catalog output. See Feed runs and warnings.

Or ask Aimée#

You don't have to build rules by hand. Describe what you want in plain language — "exclude everything that's out of stock," or "give every product whose title contains 'refurbished' a custom label" — and Aimée can set up the conditions and actions for you, then publish once you approve.

Where to go next#