NewProduct Score, 4T Segmentation, Price War and Broken Size are live.See what's new
Feedance
Meta Ads logoMeta AdsChannel · Facebook and Instagram catalogs
Meta integration

Send Meta the products worth showing.

Feedance builds your Commerce Manager catalog feed and adds product-level labels for score, 4T segment, price position and broken sizes, so Advantage+ catalog ads and dynamic ads can focus on what sells.

Meta catalog feed
Generated by Feedance for Commerce Manager
RSS 2.0 XML · xmlns:g namespaceFetched hourly
<item>
  <g:id>TS-1042</g:id>
  <g:title>Crew neck T-shirt</g:title>
  <g:price>49.90 USD</g:price>
  <g:availability>in stock</g:availability>
  <g:custom_label_0>score_86</g:custom_label_0>
  <g:custom_label_1>top</g:custom_label_1>
  <g:custom_label_2>best_price</g:custom_label_2>
  <g:custom_label_3>size_ok</g:custom_label_3>
</item>
Feedance labels, written as custom labels
What Feedance sends to Meta

A catalog with a performance signal on every product.

Meta reads every catalog ad from your feed. Feedance sends a complete, valid catalog plus the signals Meta does not have on its own.

Product Scorecustom_label_0A 0 to 100 score from views, add to carts and purchases over 1, 7 and 30 days.
4T segmentcustom_label_1Top, Tolerable, Tranquil or Toxic, from each product's own traffic and return.
Price Warcustom_label_2Best, same or more expensive than named competitors.
Broken Sizecustom_label_3Flags styles whose size run is mostly out of stock.
Creativesimage_linkBranded images from Creative Suite, with price and campaign details from the feed.
How you use it: build product sets in Commerce Manager from these labels, for example only Top products, or everything except Toxic and broken size runs. Label slots are configurable. Feedance does not change your Meta bids or budgets.

What is Meta Ads (Commerce Manager catalog feed)?

Meta Ads, in the context of e-commerce, runs on top of Commerce Manager — Meta's catalog and shop-management tool for Facebook and Instagram. Instead of designing an ad creative for every product one at a time, you upload a product catalog feed once, and Meta pulls item data (title, price, image, availability) directly from it to build dynamic ads, Advantage+ catalog ads, and shoppable posts and tags automatically. The catalog is also the product database behind Facebook and Instagram Shops, so the same feed that powers your ads can power on-platform storefronts and checkout.

Why connect your product feed to Meta Ads?

Connecting a feed unlocks catalog-based ad formats that a single static ad cannot replicate at scale: dynamic ads that automatically show a shopper the exact products they viewed or added to cart, Advantage+ catalog campaigns that let Meta's delivery system pick the best-performing items from your whole inventory, and shoppable tags on Instagram and Facebook posts. Because every one of these formats reads live from the catalog, feed accuracy has a direct line to ad performance — a stale price or an out-of-stock item still marked "in stock" gets served to a shopper who then bounces, and repeated mismatches between your feed and your landing pages is a documented cause of items being flagged or disapproved in Commerce Manager.

How does Meta match your catalog to the right shopper?

Dynamic ads work by connecting two data sources: your product catalog (which supplies images, titles, prices, and stock status) and the Meta Pixel or Conversions API (which reports what a visitor did on your site — viewed a product, added it to cart, started checkout). The link between the two is the id field: Meta matches the content_id reported by the Pixel/CAPI event to the id of the corresponding item in your catalog. If these values don't match exactly, Meta cannot connect a shopper's on-site behavior back to a specific product, and dynamic retargeting for that item simply won't fire — which is why the id field should be a stable identifier (Meta recommends using your own SKU) that never changes between feed updates.

What feed format does Meta Ads require?

Commerce Manager accepts a product feed in CSV, TSV, RSS XML, ATOM XML, or a Google Sheets link; for programmatic updates, Meta also offers the Catalog Batch API and Direct Upload API. You can add a feed to Commerce Manager three ways: paste a feed URL for Meta to fetch on a schedule, upload a file manually from your computer, or link a Google Sheet that Meta re-fetches at scheduled times. CSV and XML feeds must be UTF-8 encoded, and all field names (plus certain supported values) must be in US English regardless of your store's market. If you use XML, it should follow the RSS 2.0 format with the Google product namespace declared as xmlns:g="http://base.google.com/ns/1.0", and special characters such as &, <, and > must be entity-encoded (&amp;, &lt;, &gt;) since they aren't otherwise valid inside XML tag content.

Which product attributes does Meta Ads require?

The table below uses Meta's own catalog field names exactly as documented, so they map one-to-one onto the columns or XML tags Commerce Manager expects. For ecommerce items, at least one of brand, gtin, or mpn must be present in addition to the fields marked required below — Meta treats a missing product identifier as its own error class, separate from a missing required field.

FieldRequiredFormatExampleNotes
idYesstring, max 100 chars404718SKUUnique content ID per item; use your SKU. Must match the Pixel/CAPI content_id for dynamic ads to work
titleYesstring, max 200 chars (65 recommended)Women's Floral Midi DressSpecific, relevant product name
descriptionYesplain text, max 9,999 chars100% cotton midi dress with floral print...No HTML and no all-caps text
availabilityYesenumin stockOnly in stock or out of stock are supported values
conditionYesenumnewSupported values: new, refurbished, used
priceYesnumber + space + ISO 4217 currency code29.99 USDUse a period for decimals; must match the price shown on your landing page
linkYesURLhttps://example.com/product/404718Must begin with http:// or https:// and point to that exact product's page
image_linkYesURL, JPEG or PNGhttps://example.com/images/404718.jpgMinimum 500x500 pixels, up to 8 MB
brandConditionalstring, max 100 charsAcmeRequired unless gtin or mpn is provided instead
gtinConditional8-14 digit UPC/EAN/JAN/ISBN/ITF-14, no dashes or spaces0012345678905Required unless brand or mpn is provided instead

How to connect Meta Ads with Feedance

  1. Add your existing product source to Feedance — your current CSV, XML, Google Sheet, or platform export — as a data source.
  2. Feedance maps your store's fields onto Meta's exact field names and formats: your price becomes price in the required "number + ISO 4217 code" format (e.g. 29.99 USD), your stock flag becomes the in stock/out of stock enum availability expects, and your category values get translated into the Google or Facebook product category taxonomy Meta requires for onsite checkout eligibility.
  3. Feedance generates the feed in the format Commerce Manager needs — RSS 2.0 XML with the xmlns:g namespace and entity-encoded special characters, or CSV/TSV — so you don't have to hand-encode ampersands or manage the Google product namespace yourself.
  4. Copy the generated feed URL into Commerce Manager under Catalog > Data Sources > Add > Data Feed, and set your scheduled fetch interval (hourly, daily, or weekly) so Meta keeps re-pulling the latest version automatically.

How often should your Meta Ads feed update?

Commerce Manager lets you schedule a feed URL to be re-fetched hourly, daily, or weekly, and scheduled feeds cannot run more often than once per hour — for faster updates you need the Catalog Batch API or Direct Upload API instead of a scheduled URL fetch. How often you should actually update depends on how fast your inventory and pricing move: a daily fetch is usually enough for slow-moving catalogs, while stores with frequent price changes, flash sales, or fast-turning stock benefit from hourly updates so that price and availability shown in ads stay aligned with what's actually on the landing page — a persistent mismatch between feed data and the live page is a documented cause of items being flagged as showing incorrect or outdated information.

Common Meta Ads feed errors and how to fix them

ErrorLikely causeFix
Missing required fieldA required attribute like price, image_link, or availability is empty or absent for one or more itemsCheck every required field is populated for every item, not just a sample, before re-uploading
Missing product identifierNone of brand, gtin, or mpn is present for an ecommerce itemAdd at least one of the three identifier fields to every product
Duplicate itemThe same content ID (id) appears in more than one data feed feeding the same catalogMake sure each id is unique across all data sources attached to that catalog
Item not approved / disapprovedThe item is missing required information, or it violates Meta's advertising or commerce policiesReview the specific reason in the catalog's Issues tab, correct the feed data, and request a review if you believe the disapproval is incorrect
Incorrect or outdated product information in ads or ShopMeta's crawler compares your landing page to your feed data, and the feed (price, title, or availability) is stale relative to the live pageIncrease your feed's fetch frequency so price/availability changes on your site are reflected before the next crawl
Landing page unreachableThe link URL returns an error, redirects away from the product, or is blocked from crawling (e.g. by robots.txt)Confirm each product's link loads directly to that product and is not blocked to crawlers

Meta Ads feed optimization tips

These are grounded directly in Meta's documented field behavior rather than general marketing advice:

  1. Keep id stable and identical to the content_id your Meta Pixel or Conversions API sends — this is what lets dynamic retargeting connect a site visit to the right product.
  2. Fill in google_product_category or fb_product_category as specifically as possible; a category is required for onsite checkout eligibility and helps Meta's delivery system match the item to the right audience.
  3. Provide at least one of brand, gtin, or mpn for every item — this is a hard identifier requirement for ecommerce catalogs, not just a best practice.
  4. Match your feed's price and availability to your live landing page on every update; Meta's crawler checks for this and stale data is a documented trigger for flagged items.
  5. Use item_group_id to group size/color variants of the same product so Meta displays them as a single item with variant selection rather than as duplicate, competing listings.
  6. Add extra angles via additional_image_link (up to 20 images) rather than relying on a single hero shot for image_link.

Frequently asked questions

Does Meta Ads accept the same feed formats as Google Shopping?
Largely yes — Meta accepts CSV, TSV, RSS XML, and ATOM XML, the same broad format families most Google Merchant feeds use, plus a Google Sheets link option that Google does not offer.

What happens if my Pixel's content_id doesn't match my feed's id?
Dynamic ads and retargeting for that item will not work, because Meta links on-site behavior to catalog items strictly through matching content_id and id values.

Do I need both brand and GTIN?
No — Meta requires at least one of brand, gtin, or mpn per ecommerce item, not all three.

How fast can I update prices or stock?
Scheduled feed fetches can run as often as hourly (the fastest scheduled interval Commerce Manager supports); for near-real-time changes you'd need the Catalog Batch or Direct Upload API instead of a scheduled URL fetch.

Why is Meta showing an old price in my ad?
Meta's crawler periodically compares your feed data to your live landing page; if your feed hasn't been re-fetched since your price changed, the ad and Shop listing will keep showing the outdated value until the next fetch.

Can I use one feed for both Facebook and Instagram?
Yes — a single catalog and feed powers both Facebook and Instagram Shops, tags, and dynamic ads; there's no separate Instagram-specific feed format.

What image size does Meta require?
The image_link image must be JPEG or PNG, at least 500x500 pixels, and no larger than 8 MB.

About Meta Ads

Meta Ads is the advertising system of Meta Platforms, the company behind Facebook, Instagram, Messenger and WhatsApp. For online stores, product advertising on Meta runs on catalogs managed in Commerce Manager, Meta's tool for catalogs and shops on Facebook and Instagram.

Instead of designing an ad for every product, a merchant connects a product catalog once and Meta builds ads from it: dynamic ads that show shoppers the products they viewed or added to cart, Advantage+ catalog ads that pick the best products from the whole range, and shoppable tags on posts. The same catalog also powers Facebook and Instagram Shops.

Catalogs can be filled from a CSV, TSV or XML feed, a Google Sheet or Meta's APIs, with feeds fetched on a schedule. For dynamic ads, Meta links catalog items to activity reported by the Meta Pixel or Conversions API through the product ID, so IDs must stay stable and match exactly.

Because every catalog ad reads from the feed, feed quality shows up directly in results. Stale prices, items wrongly marked in stock or mismatches between the feed and landing pages lead to wasted clicks and can get items flagged or rejected in Commerce Manager.

How matching works

One id links the shopper to the product.

Dynamic ads connect two data sources: your catalog, which supplies images, titles, prices and stock, and the Meta Pixel or Conversions API, which reports what a visitor did on your site. Meta links them by matching the event's content_id to the catalog item's id.

Pixel or Conversions API
content_id: TS-1042
must match
Catalog feed
id: TS-1042

If the values do not match exactly, retargeting for that product will not fire. Keep id stable between updates. Meta recommends your own SKU.

Setup

Connect Meta in four steps.

  1. 01
    Add your product source
    Connect your current CSV, XML, Google Sheet or platform export to Feedance as a data source.
  2. 02
    Map fields to Meta
    Price becomes "number + ISO 4217 code" (for example 29.99 USD), stock becomes the in stock / out of stock value, and categories map to the Google or Facebook product category.
  3. 03
    Generate the Meta feed
    Feedance outputs RSS 2.0 XML with the xmlns:g namespace and encoded special characters, or CSV/TSV, with your labels and creatives included.
  4. 04
    Add the URL in Commerce Manager
    Go to Catalog > Data Sources > Add > Data Feed, paste the Feedance feed URL and schedule the fetch hourly, daily or weekly.
Feed format

Required and optional fields

Field names follow Meta's catalog documentation. For e-commerce items, at least one of brand, gtin or mpn is needed on top of the required fields.

CSVTSVRSS XMLATOM XMLGoogle SheetsUTF-8 encoded
FieldRequiredFormatNotes
idYesstring, max 100 charsUse your SKU. Must match the Pixel/CAPI content_id.
titleYesstring, max 200 chars (65 recommended)Specific, relevant product name.
descriptionYesplain text, max 9,999 charsNo HTML and no all-caps text.
availabilityYesin stock / out of stockOnly these two values are supported.
conditionYesnew / refurbished / used
priceYesnumber + ISO 4217 codee.g. 29.99 USD. Must match the landing page.
linkYesURLStarts with http:// or https://, points to that product.
image_linkYesURL, JPEG or PNGAt least 500x500 px, up to 8 MB.
brandConditionalstring, max 100 charsRequired unless gtin or mpn is given.
gtinConditional8 to 14 digits, no dashes or spacesRequired unless brand or mpn is given.
mpnConditionalstringRequired unless brand or gtin is given.
item_group_idOptionalstringGroups size and color variants into one item.
additional_image_linkOptionalURLs, up to 20Extra angles beyond the main image.
fb_product_categoryOptionalcategoryNeeded for onsite checkout; helps delivery.
custom_label_0 to 4OptionalstringWhere Feedance writes score, 4T, Price War and Broken Size.
Update frequency

How often should the Meta feed update?

Commerce Manager can fetch a feed URL hourly, daily or weekly. Scheduled fetches cannot run more often than once an hour; faster changes need Meta's Catalog Batch API or Direct Upload API.

  • Daily is usually enough for slow-moving catalogs
  • Hourly suits frequent price changes, flash sales and fast-turning stock
  • Price and availability should always match the landing page, or Meta may flag items as outdated
Troubleshooting

Common Meta feed errors and how to fix them

ErrorLikely causeFix
Missing required fieldA required attribute such as price, image_link or availability is empty for some items.Check every required field for every item, not just a sample.
Missing product identifierNone of brand, gtin or mpn is present.Add at least one of the three to every product.
Duplicate itemThe same id appears in more than one data feed for the catalog.Keep each id unique across all data sources.
Item disapprovedMissing information, or a policy issue.Check the Issues tab, fix the feed and request a review.
Outdated product informationThe feed is stale compared with the live landing page.Fetch the feed more often so changes land before the next crawl.
Landing page unreachableThe link errors, redirects away or is blocked from crawling.Make sure each link opens that product and is crawlable.
Optimization tips

Get more from your Meta catalog

  • Keep id stable and identical to the content_id your Pixel or Conversions API sends.
  • Fill fb_product_category or google_product_category as specifically as you can.
  • Give every item at least one of brand, gtin or mpn.
  • Match price and availability to the live landing page on every update.
  • Use item_group_id so size and color variants show as one item, not competing duplicates.
  • Add angles with additional_image_link, up to 20 images.
  • Build product sets from Feedance custom labels to keep Toxic products and broken size runs out of prospecting.
Note Cosmetics
+127%ROAS with 10% less spend
Case study

How Note Cosmetics increased ROAS by 127% while spending 10% less

“Feedance allowed us to instantly add key purchasing triggers, like price and campaign details, directly onto our visuals. This enabled us to create branded, scroll-stopping creatives that truly resonated with our customers.”
Nilcan GüngorenDigital Marketing and E-Commerce Manager, Note Cosmetics Turkey
Read the case study
FAQ

Questions about the Meta integration

Feed formats, matching and update timing.

Does Meta accept the same feed formats as Google Shopping?

Largely, yes. Meta accepts CSV, TSV, RSS XML and ATOM XML, the same format families most Google Merchant feeds use, plus a Google Sheets link.

What happens if my Pixel's content_id does not match my feed's id?

Meta cannot link the visitor's activity to that catalog item, so retargeting for that product will not fire. Keep id stable between updates and identical to the content_id your Pixel or Conversions API sends.

Do I need both brand and GTIN?

No. For e-commerce items Meta needs at least one of brand, gtin or mpn on top of the required fields. Any one of the three meets the requirement.

How fast can I update prices or stock?

Commerce Manager can fetch a feed URL hourly, daily or weekly, and scheduled fetches cannot run more often than once an hour. Faster changes need Meta's Catalog Batch API or Direct Upload API.

Why is Meta showing an old price in my ad?

The feed is stale compared with the live landing page. Fetch the feed more often so price changes land before the next crawl, and keep price and availability matched to the landing page on every update.

Can I use one feed for both Facebook and Instagram?

Yes. The Commerce Manager catalog serves catalog ads on both Facebook and Instagram, so one Feedance feed covers both.

What image size does Meta require?

image_link must be a JPEG or PNG of at least 500x500 px and up to 8 MB. You can add up to 20 extra angles with additional_image_link.

Does Feedance change my Meta bids or budgets?

No. Feedance builds the catalog feed and writes its labels into it. Bids, budgets and product sets stay in your Meta account.

See which
products earn.

Connect your feed and GA4. We show Product Score, 4T, Price War and Broken Size on your own catalog.