# Ad product feeds

Canonical URL: https://support.optiqube.ai/en/articles/ad-product-feeds

A campaign provides product feeds on its **Feeds** tab. The tab needs a paid plan, and it disappears once the campaign is activated. You paste a feed URL into Meta Commerce Manager (or Google Merchant Center) once, and it keeps itself up to date: Meta reads it again on its own schedule, so newly approved images arrive on the next pull.

[Video: Run your styles on Meta with feeds](https://support.optiqube.ai/demos/meta-feed-connection.html)

For the step-by-step setup in Commerce Manager, see [Run your images on Meta](https://support.optiqube.ai/en/articles/run-your-images-on-meta).

## The three feeds

**Main feed.** Your whole shop catalog: every connected product with its original photo and full details (title, price, link, availability), not just the products this campaign made images for. Use it to create a catalog on Meta when you do not have one yet, or as the primary feed in Google Merchant Center. It is a Google Shopping XML (RSS 2.0) feed; click **Copy CSV version (for Meta)** for a CSV. The Feeds tab shows how many products it holds, for example *124 products — the whole shop, not just this campaign*.

**Supplementary feed** (one per style). Only the product ID, the AI image for that style, and `custom_label_1` set to the style's name. Added on top of an existing catalog, it replaces the image of each product it names (this campaign's approved ones) and leaves every other product on its own photo. It comes as XML and as CSV; use **Copy CSV version (for Meta)** for Meta.

**Style feed (Full).** The style's own full feed: like the main feed, but with the AI image as the product image. A catalog fed by this alone shows the styled images without any supplementary step. Click **Copy Style feed (Full)**.

Each feed row has **Copy** and **Download** buttons.

## Pick the right product ID

A supplementary feed only works if its product IDs match the IDs your Meta catalog was built on. Otherwise Meta cannot find the products, and nothing changes, without any error.

1. Under **Product identifier**, check whether the feeds use **Product ID** or **SKU**.
2. Not sure which one your catalog uses? Paste the data feed URL your catalog already runs on and click **Check which id matches**. You find that URL in Commerce Manager under **Data sources** → your feed → **Settings**.
3. OptiQube counts how many of its IDs land under each option. If the other option wins, take the switch it offers.

> **Note:** Creating the catalog from the **Main feed**? Then both sides come from OptiQube, and either choice works.

## Keeping it in sync

- Feeds are built live from the campaign. An image you approve joins on Meta's next pull; a creative you hide or exclude leaves the same way. There is nothing to re-export.
- The URLs stay the same for the campaign, even if you regenerate images or rename it.
