# Meta Catalog Ads Guide with 5 Free Templates

> Set up Meta catalog ads and add price tags and sale badges to every product image. Generate the ads from your feed with 5 free templates

- **Author**: Rishi Mohan
- **Published**: 2026-10-17
- **Tags**: Ecommerce, Ads, Meta Ads, Product Feed, Automation
- **Read time**: 8 min read
- **URL**: https://orshot.com/blog/meta-catalog-ads

---

To customize Meta catalog ads, put the price, sale badge and logo into each product's image. Use Meta's free image templates, a paid tool like Confect or Marpipe, or generate the images from your feed with an API like Orshot.

Most brands skip it. I went through 26 big US advertisers in Meta's Ad Library on October 17, 2026, and 18 of them ran catalog ads with the bare product photo.

![Four products from a product feed, a ring, a dress, an armchair and a lamp, shown as raw feed images and as generated Meta catalog ads with a logo, price, sale badge and seasonal frame](https://orshot.com/blog/meta-catalog-ads/raw-vs-designed.webp)

The other eight are the ones you remember. Below are the three ways to get there, and how to keep a sale badge from showing after the sale ends.

**TL;DR** — How much control do you need over your catalog ad design?

- **1. A logo and price label, Meta only**: [Meta image templates](#1-add-a-price-and-logo-with-meta-image-templates) — Free, inside Commerce Manager. Single image and carousel only, with fixed layer types.
- **2. A managed tool with rules and reports**: [Confect, Marpipe or Bigatom](#2-use-a-catalog-creative-tool-like-confect-or-marpipe) — Feed sync, design rules and testing in one product. From $199 to $299 a month.
- **3. Your own designs for every product**: [Orshot template + your feed](#3-generate-catalog-ad-images-from-your-feed-with-orshot) — Any layout at 1:1, 4:5 and 9:16, under a second per product, from a free plan.

| Way to customize | Design lives in | Cost, October 2026 |
| :--- | :--- | :--- |
| **1. Meta image templates** | Commerce Manager | Free |
| **2. Catalog creative tool** | The vendor's editor | \$199 to \$1,100 a month |
| **3. Orshot API** | Your own template | Free plan, then from \$39 |

## What Are Meta Catalog Ads?

Meta catalog ads, now called Advantage+ catalog ads, show each shopper products from your catalog feed that they are most likely to buy. They used to be called dynamic product ads, and both names mean the same ad.

Meta builds every ad from the feed's `image_link`, title and price. The image is usually a plain packshot, and it's the only part of the ad you get to design.

### How to Set Up a Meta Catalog Ad

1. **Create a catalog** in Commerce Manager and add products from Shopify, a data feed or a Google Sheet.
2. **Connect your pixel** or Conversions API, so Meta knows who viewed which product.
3. **Create a Sales campaign** in Ads Manager and turn on the catalog option.
4. **Pick a product set** and an audience: past visitors for retargeting, or broad for prospecting.
5. **Choose single image, carousel or collection**, then customize the images with one of the three ways below.

## What the Best Catalog Ads Do

The eight advertisers that design their catalog images do it in similar ways:

- **One fixed brand layout.** [Zales](https://www.facebook.com/ads/library/?id=1920373692012045 "target=_blank rel=nofollow") puts the logo on top and a plum price bar under every product.
- **Badges driven by the data.** [Lulus](https://www.facebook.com/ads/library/?id=1307988201439887 "target=_blank rel=nofollow") shows "On Sale" only on sale items, and [Sephora](https://www.facebook.com/ads/library/?id=873556282339700 "target=_blank rel=nofollow") adds a seal only to tagged products.
- **Extra photos from the feed.** Lulus and Princess Polly turn a product's additional images into 2-up and 3-up collages.
- **Seasonal backdrops.** [Lamps Plus](https://www.facebook.com/ads/library/?id=924303987378247 "target=_blank rel=nofollow") adds a sale band, and Lulus swaps the background each season.
- **A price tag on a lifestyle photo.** [IKEA](https://www.facebook.com/ads/library/?id=27853068147718359 "target=_blank rel=nofollow") floats a "New" tag with the price in the empty part of a room.

![Real Meta catalog ads from the Ad Library on October 17, 2026: Zales jewelry ads with a logo on top and a plum price bar, showing 39% OFF and a struck price only on the discounted bracelet, and Lamps Plus lighting ads with a logo bar and a red sale price only on the discounted pendant](https://orshot.com/blog/meta-catalog-ads/real-ads-brand-bar.webp)

![Real Meta catalog ads from the Ad Library on October 17, 2026: Lulus fashion ads as a side panel, a 3-photo collage, a seasonal card and an On Sale pill on a discounted item, and Sephora beauty ads with Allure award and Clean at Sephora seals only on tagged products](https://orshot.com/blog/meta-catalog-ads/real-ads-badges.webp)

Look at the Zales bracelet: it's the only product on sale, and the only ad that says "39% OFF".

None of the eight put ratings, shipping or a "Shop now" button in the image, since Meta's text fields and button already do that.

I rebuilt those five layouts as free templates with made-up brands:

![Five catalog ad layouts rebuilt as Orshot templates: a bottom price bar for jewelry, a photo with a side panel for fashion, a 3-photo collage for fashion, a floating price tag for furniture and a seasonal backdrop for home goods](https://orshot.com/blog/meta-catalog-ads/five-layouts.webp)

**Copy these catalog ad templates free** — Copy the jewelry template into a free Orshot workspace and swap in your logo, colors and products. No credit card required.

[Copy template](https://orshot.com/templates/shared/rma08e62/preview?view=play)

## 1. Add a Price and Logo with Meta Image Templates

Meta image templates are free and built into Commerce Manager. There, open your catalog's Image templates tab, stack a product layer with your logo, text and a price field, and Meta applies it to every product in the ad.

**Pick this if** you only advertise on Meta and a logo plus a price or sale label is enough.

Meta's [image templates page](https://www.facebook.com/business/help/947145298422088 "target=_blank rel=nofollow") lists conditional display on text, image and price layers, so a sale label can show only on sale items. Templates come in 1:1, 4:5 and 9:16.

The limits, as of October 17, 2026:

- **No collection ads.** Image templates work with single image and carousel only.
- **Meta only.** The design can't follow you to Google Shopping, Pinterest or email.
- **Frames end October 30, 2026.** Meta's [frames page](https://www.facebook.com/business/help/517601898571657 "target=_blank rel=nofollow") says frames are replaced by image templates, and they never showed on Instagram.

**Best for:** Meta-only advertisers who want a logo and price label at no cost.

## 2. Use a Catalog Creative Tool Like Confect or Marpipe

Catalog creative tools connect to your feed, give you an editor with rules, and push designed images back to Meta. The monthly price also pays for feed sync, image versioning and reports on which design sold more.

**Pick this if** you want all of that managed and the price fits your ad budget.

| Tool | Entry price, October 17, 2026 | Entry plan covers |
| :--- | :--- | :--- |
| **[Marpipe](https://www.marpipe.com/pricing "target=_blank rel=nofollow")** | \$199 a month | 500 products, 3 live designs |
| **[Confect](https://confect.io/pricing "target=_blank rel=nofollow")** | \$299 a month | 3,000 products, 1 market |
| **[Bigatom](https://bigatom.ai/pricing "target=_blank rel=nofollow")** | \$299 | Up to 1,000 products |
| **[Socioh](https://socioh.com/pricing "target=_blank rel=nofollow")** | \$1,100 a month | Stores under \$250k a month |

Marpipe also has a free plan for plain product ads, and Hunch shares prices only on a demo call.

**Best for:** brands and agencies that want catalog design, rules and testing in one paid tool.

## 3. Generate Catalog Ad Images from Your Feed with Orshot

Orshot is an API that turns a design template into images, PDFs and videos. For catalog ads, you design a layout, send your feed rows, and get an ad per product at every Meta size. (Disclosure: I built Orshot.)

**Pick this if** you want your own designs, the same images on Meta, Google and email, and a bill based on the images you generate.

I built this end to end on October 17, 2026, and every image below is a real output from that test.

### Step 1: Copy a catalog ad template

Each layer that changes per product is a named field like `image_link`, `title` or `price`. Click a layer below to see its field name, or copy the template into your workspace.

The other four: [side panel](https://orshot.com/templates/shared/ipxpl970/preview?view=play), [3-photo collage](https://orshot.com/templates/shared/vrhp9zyy/preview?view=play), [price tag](https://orshot.com/templates/shared/i5hnmio1/preview?view=play) and [seasonal backdrop](https://orshot.com/templates/shared/6gpg31s2/preview?view=play).

### Step 2: Map feed columns to template fields

Most fields map straight across. The sale badge comes from one rule: when `sale_price` is lower than `price`, show the old price and the discount.

![Feed columns mapped to template fields: image_link to image_link, title to title, sale_price or price to price, price on sale items to compare_at_price, and price compared with sale_price to the headline, with compare_at_price.opacity set to 0 on full-price items](https://orshot.com/blog/meta-catalog-ads/feed-to-fields.webp)

On full-price items, hide the old price with `compare_at_price.opacity: 0`. An empty string won't clear it.

![One Meta catalog ad template fed two rows: with an empty sale_price it shows $1,499 and the line Made for every day, with a sale_price of 899 it shows $899, a struck $1,499 and 40% OFF](https://orshot.com/blog/meta-catalog-ads/sale-on-off.webp)

### Step 3: Generate an ad per product at every size

One [render API](https://orshot.com/docs/api-reference/render-from-studio-template) call takes the row's values and returns the 1:1 ad plus 4:5 and 9:16 copies.

![An Orshot render request with the template ID, the earrings row as modifications and extra sizes, and the finished Halo Diamond Stud Earrings catalog ad it returns with a 20% OFF headline and a struck $1,150](https://orshot.com/blog/meta-catalog-ads/request-to-result.webp)

```javascript
// p is one feed row with price labels already formatted, like "$899"
const onSale = p.sale_price && parseFloat(p.sale_price) < parseFloat(p.price);

const res = await fetch("https://api.orshot.com/v1/studio/render", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    Authorization: `Bearer ${process.env.ORSHOT_API_KEY}`,
  },
  body: JSON.stringify({
    templateId: 12345, // your copy of the template
    modifications: {
      image_link: p.image_link,
      title: p.title,
      price: onSale ? p.sale_price_label : p.price_label,
      compare_at_price: p.price_label,
      "compare_at_price.opacity": onSale ? 1 : 0,
      headline: onSale ? `${p.pct_off}% OFF` : "Made for every day",
    },
    response: { type: "url", format: "jpg", extraSizes: ["1080x1350", "1080x1920"] },
  }),
});
const { data } = await res.json(); // data.content + data.extraSizes
```

I ran eight jewelry rows in one batch request and got eight finished ads back in about 5 seconds. Four were on sale and four weren't, and each one picked the right design on its own.

![Eight Meta catalog ads generated from eight feed rows with the same jewelry template: four on sale with a struck price and a percentage off, four at full price with a tagline instead](https://orshot.com/blog/meta-catalog-ads/catalog-grid.webp)

[Smart Resize](https://orshot.com/features/smart-resize) re-lays out the same design for Feed and Stories, so there's no second template to keep in sync.

![The same Meta catalog ad template rendered at 1:1 for Feed, 4:5 for Feed and 9:16 for Stories with Smart Resize, keeping the photo, logo, price and sale pill in place](https://orshot.com/blog/meta-catalog-ads/three-sizes.webp)

### Step 4: Send the images to Meta with a supplementary feed

A supplementary feed swaps fields on products your main feed already lists. Meta's [supplementary feed page](https://www.facebook.com/business/help/609872007120910 "target=_blank rel=nofollow") lists `image_link` and `additional_image_link` among them.

![How generated images reach Meta catalog ads: the product feed goes into an Orshot template that renders one image per product, a supplementary ads feed sends each id and image_link, the Meta catalog swaps the image, and catalog ads show it at 1:1, 4:5 and 9:16](https://orshot.com/blog/meta-catalog-ads/feed-flow.webp)

1. Write each product's `id`, new `image_link` and the 4:5 and 9:16 URLs in `additional_image_link` to a Google Sheet or CSV.
2. In Commerce Manager, open **Data sources**, add a **supplementary feed** linked to your main feed, and paste the sheet URL.
3. Schedule it hourly or daily, and turn on **Adapt to placement** in the ad so Meta uses the 9:16 image in Stories and Reels.

Every Orshot render gets a new URL. That's what makes Meta pick up the change, since it only re-downloads an image when the link changes.

### Step 5: Keep it running with n8n

Run it every hour with five n8n nodes: a Schedule Trigger, your feed (HTTP Request or Shopify), a Code node that keeps only changed products, the Orshot node, and Google Sheets. The [n8n guide](https://orshot.com/docs/integrations/n8n) covers the Orshot node.

Only changed products get re-rendered, so you don't pay twice for the same image. Shopify stores will also be able to do this from Orshot's Shopify app, which is in App Store review as of October 17, 2026.

### What It Costs Compared with Catalog Tools

Orshot costs less than the paid entry plans of catalog tools at every catalog size I priced. It charges 1 credit per image, so 1:1, 4:5 and 9:16 is 3 credits per product.

| Catalog size | Orshot, all 3 sizes | Catalog tool entry plan |
| :--- | :--- | :--- |
| **500 products** | \$39 | Marpipe \$199 |
| **1,000 products** | \$99 | Bigatom \$299 |
| **3,000 products** | \$160 | Confect \$299 |

Monthly list prices, checked October 17, 2026. The catalog tools include feed sync and reports in that price. With Orshot you run the feed step yourself in n8n, Make, Zapier or code.

**Generate a catalog ad for every product** — Copy a template, send your feed rows from the API, n8n, Make or Zapier, and get 1:1, 4:5 and 9:16 ads back. 100 free credits a month.

[Start free](https://orshot.com/pricing?via=blog-meta-catalog-middle)

### Run It for Every Client Catalog

Agencies can reuse the same pipeline for every client. The logo, brand name and colors are fields too, so adding a client means new values and a new feed.

![One catalog ad layout rendered for three made-up jewelry clients, Aurelia in navy, Moss & Stone in green and Noor in brown, where only brand_name, colors and feed values change](https://orshot.com/blog/meta-catalog-ads/brand-swap.webp)

> — Michael Ossendrijver, CEO, Incubeta

### Things That Bit Me

- **Empty values don't hide layers.** Use `layer.opacity: 0`.
- **Feeds mix white and grey photos.** A rounded photo tile keeps them consistent, where a multiply blend left hard grey boxes.
- **Full-width bottom bars float at 9:16.** Inset cards resize better.

- Any layout, including collages from extra feed photos
- 1:1, 4:5 and 9:16 from one design in one call
- Same images for Meta, Google Shopping, Pinterest and email
- Free plan, then priced by images made

Cons:
- You run the feed step yourself
- Sale rules live in your feed step, not in the template
- No ad performance reports

**Best for:** brands and agencies that want their own catalog ad designs at every Meta size and can run a small feed automation.

## Why Isn't My Catalog Ad Image Updating?

Meta only downloads a product image again when its URL changes. Its [product image specs](https://www.facebook.com/business/help/686259348512056 "target=_blank rel=nofollow") say a replaced image "must have a different URL so that we recognise the change".

So give every new version a new link. Don't add timestamps to unchanged images, though: Meta's [developer blog](https://developers.facebook.com/blog/post/2021/01/05/product-catalog-image-fetching-logic/ "target=_blank rel=nofollow") warns that links changing on every upload can slow fetching down.

## What Text Can You Put on Catalog Images?

Meta allows a logo, product name, price and sale label on catalog ads. Its own image templates add exactly those.

Meta's specs do recommend no text over the product and no temporary price drops on the raw catalog image. Keep branding beside the product, and re-render when a sale ends so a stale "40% OFF" never ships.

## Which Catalog Ad Overlays Sell More?

Showing the saving and the price had the biggest effect on sales. Confect's [study](https://confect.io/tactics/catalog-ads-designs-the-big-cheat-sheet "target=_blank rel=nofollow") of 6.5 billion impressions from 568 advertisers, published September 26, 2024, found these ROAS changes:

| Element on the image | ROAS change |
| :--- | :--- |
| **Savings shown** | +57% |
| **Price** | +41% |
| **Logo** | +7% |

Confect sells catalog ad design, so treat these as vendor numbers. The same study found that showing the price cut clicks by 16% but raised conversion rate by 10%.

## Meta Catalog Ads FAQ

**Q: Are catalog ads the same as dynamic product ads?**

Yes. Meta renamed dynamic product ads to Advantage+ catalog ads. Both show products from your catalog feed to the people most likely to buy them. Reddit and X still use the name dynamic product ads for their own versions.

**Q: How do I show a sale badge only on discounted products?**

Compare sale_price with price for each product. In Meta image templates, use conditional display on the sale layer. With an Orshot template, send the discount and old price when sale_price is lower, and set the old price layer's opacity to 0 when it isn't.

**Q: What size should Meta catalog ad images be?**

Use 1:1 at 1080 by 1080 pixels as the main catalog image. Add 4:5 at 1080 by 1350 for Feed and 9:16 at 1080 by 1920 for Stories and Reels, and turn on Adapt to placement so Meta uses the 9:16 image in full-screen placements.

**Q: Can I use lifestyle photos in catalog ads?**

Yes. Meta recommends a white backdrop for the main image but accepts lifestyle photos. Lulus and IKEA run ads on model and room photos with a price added. Keep the product clearly visible and the text off the product itself.

**Q: What is Orshot?**

Orshot is an API for automated image, PDF and video generation from templates. You design a template in Orshot Studio, mark the layers that change, and generate images for every product from your API, n8n, Make, Zapier or an AI agent by sending your feed values.

## How I Checked This

I scanned the Ad Library, checked every Meta help page and pricing page, and rendered every image here on October 17, 2026.

I didn't run these images in a live Meta catalog, so test the supplementary feed on a small product set first.

## Generate Your First Catalog Ad Today

Your first catalog ad takes about ten minutes:

1. [Sign up free](https://orshot.com/pricing?via=blog-meta-catalog-footer). 100 credits a month, no credit card.
2. Copy one of the five templates and drop in your logo and colors.
3. Paste three rows from your feed into the playground and generate the ads.
4. Connect the feed with the code in step 3 or the n8n flow in step 5.

If something doesn't work the way you expect, hit the chat button. I'm usually the one on the other end.