Rewrite feed fields with templates
Build titles, brands, categories and custom labels from product data with field templates, check them in the live preview and see what your plan includes.
Setup Requires the free plan or higher Verified: October 2026 · v0.1 Draft
Draft: written from the product plan before launch. Screenshots are added when the app is released and the steps are re-verified.
A field template rewrites what a feed sends for one field, for example a title built as brand, product name and colour. Templates live inside a filter, so they reach every feed the filter is linked to.
Before you start
- A feed for your channel (Create your first feed).
- On the Free plan only the Title template is available; the other fields need a paid plan (plans).
Add a template
- Open Filters and choose Create filter, or Edit on an existing filter.
- Under Filter name and status enter a name and keep the switch on Active. Inactive filters are not applied.
- Leave Rules empty if the filter should only rewrite fields. Conditions there change which products enter the feed.
- Under Field templates choose Add template, pick the field under Field and type the text under Template. Available fields below the list shows every placeholder.
- Under Apply to feeds tick the feeds, then Save. Linked feeds are regenerated with the new values.
Fields you can rewrite
| Field | What it changes |
|---|---|
| Title | The product title the channel shows |
| Description | The description, written as plain text |
| Brand | The brand (vendor) |
| Product type / category | product_type, and the category on Akakçe |
| Google product category | google_product_category; empty unless a template fills it |
| Custom label 0 to Custom label 4 | custom_label_0 to custom_label_4, used to group products in campaigns |
Google product category and custom labels go to the Google-format channels (Google, Meta, TikTok, Snapchat, Pinterest, Microsoft, Perplexity, Cimri). Akakçe receives title, description, brand and category.
Placeholders
| Placeholder | Value |
|---|---|
{{title}} | Feed title: product title plus variant name, Basic Tee - Red / M. After a title template, its result |
{{product_title}} | Product title only |
{{variant_title}} | Variant name, Red / M; empty for products without variants |
{{vendor}} | Vendor |
{{product_type}} | Product type |
{{category}} | Shopify product category, full path |
{{sku}} | Variant SKU |
{{barcode}} | Variant barcode (a valid GTIN first) |
{{color}} | Value of the option named Color, Colour or Renk |
{{size}} | Value of the option named Size, Beden, Numara or Boyut |
{{option:Material}} | Value of any option by name, case does not matter |
{{tags}} | Product tags, comma separated |
{{price}}, {{compare_at_price}} | Price and compare-at price in the feed’s market after price rules, 349.90 |
{{currency}} | Feed currency, TRY |
{{description}} | Product description as plain text |
{{metafield:namespace.key}} | A product metafield, for example {{metafield:custom.material}} |
Text outside the braces is copied as typed. Placeholders are written in lower case as listed; spaces inside the braces are allowed. A template can be up to 500 characters, and saving is refused when it contains a placeholder that is not on the list.
Empty values and their separators
When a placeholder has no value, it is removed together with the separator next to it. Separators are -, –, |, /, , and :. If separators stand on both sides, the first one stays. Double spaces are merged and the ends are trimmed. Results for a product with no colour option and size M:
| Template | Result |
|---|---|
{{vendor}} {{product_title}} - {{color}} {{size}} | Acme Basic Tee M |
{{vendor}} {{product_title}} - {{color}} / {{size}} | Acme Basic Tee - M |
{{product_title}} | {{color}} | {{size}} | Basic Tee | M |
{{product_title}} ({{color}}) | Basic Tee ( ) |
Brackets are not separators, so keep them away from values that can be empty.
If a whole template comes out empty, the title keeps its original value: channels reject items without a title. Any other field is sent empty. An empty description is replaced with the title, and an empty brand matters on Meta and TikTok, which leave out products without a brand.
Live preview
Once the filter has a template, Preview product lists six of your active products. Under each template a Preview line shows the result for the selected product, or “(empty; the channel gets no value)”. Templates run top to bottom, so a template that uses {{title}} after a title template sees the new title.
Metafields
Metafield placeholders read product metafields by namespace.key, the namespace and key of the metafield definition in your Shopify admin. Variant metafields are not available. The value is the text Shopify stores; list metafields arrive in Shopify’s list format, so single-line text and number metafields work best.
Each plan allows a number of distinct metafields across all active filters, templates and conditions together: Free 2, Starter 5, Growth 10, Scale 20. Above that, saving shows “Your plan does not allow more distinct metafields in rules”. Remove one or upgrade (plans).
Plan limits
On Free, every field except Title is greyed out in the Field list and a banner explains why. If you move to Free with other templates saved, they stop being applied and the feed lists Template not in plan under Issues in the last run. On Starter, Growth and Scale every field is available.
Examples
- Title with brand and colour:
{{vendor}} {{product_title}} - {{color}} / {{size}}. - Season label for campaigns: Custom label 0 with
{{metafield:custom.season}}. - Google category per product: keep the category path in a metafield and use
{{metafield:custom.google_category}}. - Description with care notes:
{{description}} {{metafield:custom.care}}.
Templates have no conditions of their own: a template applies to every product in the linked feeds. For values that differ per product, keep them in a metafield.
Check that it works
- The Preview line shows the value you expect for two or three different products.
- After saving, open the feed URL in a browser and search for the field, for example
g:custom_label_0. - The channel’s own diagnostics show the new titles after its next fetch.