# Meta

Meta's product catalogue is the data source behind Facebook and Instagram Shops, Advantage+ catalogue ads and dynamic retargeting, populated by a product feed uploaded to Commerce Manager. Its attribute names largely mirror Google's, but its accepted values and its handling of variants differ enough to break a feed copied straight across.

- **Canonical URL:** https://www.feedlab.io/knowledge/channels/meta
- **Last reviewed:** 16 September 2026
- **Source:** feedlab knowledge base
- **Licence:** free to quote and cite with attribution to feedlab






## Feed specification

| Property | Value |
| --- | --- |
| Destination | Meta Commerce Manager catalogue |
| Refresh | Scheduled feeds can be fetched hourly, daily or weekly, which is a finer granularity than Google offers. Meta also supports pushing individual updates through the Catalog Batch API for stock changes that cannot wait for the next scheduled pull. |


### Accepted formats

- `CSV`
- `TSV`
- `XML (RSS 2.0)`
- `XML (Atom 1.0)`
- `Google Sheets`



## What catches Shopify merchants out

### condition is required, not optional

Google only requires condition when an item is not new. Meta requires it on every item. A feed built to Google's rules and pointed at Meta will fail on every row until condition is mapped.

### Availability values have historically differed

Meta's documented values use underscores (in_stock, out_of_stock), matching Google, and its older specification used spaces. Feeds built years ago against the space-separated form still circulate in templates, so check what your source actually emits rather than assuming.

### Every variant needs its own row and a shared item_group_id

As with Google, a Shopify product with three sizes is three catalogue items. Meta groups them for the variant picker in Shops through item_group_id, and without it each size appears as an unrelated product.

### Image requirements are stricter for Shops

Catalogue ads tolerate most images, but Shops surfaces enforce a minimum resolution and prefer square or near-square crops. Shopify's default product image is whatever the merchant uploaded, so the same feed can pass for ads and fail for Shops.








## Frequently asked questions

### What is the difference between a Meta catalogue feed and a Google Shopping feed?

The attribute names overlap heavily, but Meta requires condition on every item where Google only requires it for non-new products, and Meta supports hourly scheduled fetches where Google's minimum is daily. Category values also differ: Google uses its own product taxonomy, Meta uses its own category list.

### How often can Meta fetch a scheduled catalogue feed?

Meta supports hourly, daily and weekly scheduled fetches. For catalogues where stock moves quickly, hourly fetches combined with the Catalog Batch API for urgent changes keep the catalogue closer to the store than a daily pull can.

### Do I need a separate feed for Facebook and Instagram?

No. Facebook and Instagram both read from the same Meta catalogue, so one feed into Commerce Manager serves Shops, catalogue ads and dynamic retargeting across both surfaces.




## Primary sources

- [Meta: Product catalogue data feed reference](https://www.facebook.com/business/help/120325381656392)
- [Meta: Supported feed formats](https://www.facebook.com/business/help/125074381480892)



