Get Started
How to set up a Facebook Catalog product feed
  1. Home
  2. Knowledge Base
  3. Getting Started
  4. How to set up a Facebook Catalog product feed

How to set up a Facebook Catalog product feed

Facebook and Instagram shopping ads run on product catalogs — structured data files that tell Meta exactly what you sell, how much it costs, and where to send shoppers when they click. Without a well-configured catalog, your products either won’t appear in ads at all or will show with incorrect details that hurt your click-through rate and return on ad spend.

Product Feed Pro and Product Feed Elite generate your Meta catalog feed automatically from your WooCommerce product data and keep it in sync on a schedule you control. Create the feed once, give Meta the URL, and the plugin handles every update after that.

Jump to:


What you need before you start

  • Product Feed Pro or Product Feed Elite installed and activated on your WooCommerce store. The Facebook DRM channel is available on both plans.
  • A Meta Business Manager account at business.facebook.com. This is where your catalog lives.
  • A Facebook Page or Instagram Business profile connected to your Business Manager. Meta requires at least one connected asset before you can run catalog ads.
  • Products with complete data — title, price, stock status, and at least one image. Incomplete products will be rejected during the feed review.

Part 1: Build your feed in the plugin

To open the feed creation wizard:

  1. In your WordPress dashboard, go to Product Feed → Manage feeds.
  2. Click Add New Feed. Alternatively, go directly to Product Feed → Create feed.

Step 1: General settings

The General tab controls which products are included in the feed, how the feed file is formatted, and how often it is regenerated. For detailed instructions, see Complete Guide to Feed General Settings.

Configure the basic options for your feed:

SettingRecommendation
Project nameGive the feed a clear name (e.g., META_US)
CountryChoose your target country
ChannelSelect Meta / Facebook Catalog Feed / Instagram
Include product variationsEnable — Meta requires each variation (size, color) as a separate item
And only include default product variationOptional — use when you want to include only the default variant of each product
And only include lowest priced product variation(s)Optional — use only if you want to advertise one variant per product
File formatXML (recommended)
Refresh intervalDaily for most stores; hourly if your inventory changes frequently
Create a preview of the feedEnable to generate a test feed before the first submission

Click Save & Continue to proceed to Field Mapping.

Meta Feed General Step

Step 2: Field mapping

This is the most important step. Meta will reject products that are missing required fields or that use incorrect values. The plugin pre-maps the most common fields, but review every required field before saving.

Required fields

Meta AttributeSuggested MappingNotes
idProduct IDMust be unique and stable. Don’t change it after submission. Meta uses it to track item history.
titleProduct NameKeep under 65 characters; longer titles are truncated in most ad placements. No all-caps, no promotional text.
descriptionProduct DescriptionPlain text only, no HTML or links. Must differ from the title, up to 9,999 characters.
availabilityAvailabilityAutomatically maps to WooCommerce stock status. Accepted values: in stockout of stock.
conditionConditionUse Static Value and enter new for most stores. Accepted values: newrefurbishedused.
priceRegular PriceFormat: 29.99 USD. Always use a period as the decimal separator. Never use currency symbols.
linkLinkFull product URL. Must resolve to a live page on your domain.
image_linkMain ImageMinimum 500×500 px. Meta recommends 1024×1024 px. Maximum 8 MB. Square images perform best in ad placements.
brandBrandsIf you use the WooCommerce brands attribute, map it here. Otherwise, use Static Value and enter your store name.
Field Mapping step in Product Feed Pro showing the required Facebook fields mapped to WooCommerce attributes

Variant grouping

Meta AttributeSuggested MappingNotes
item_group_idItem Group IDGroups all variants of the same product together (e.g., the same shirt in different sizes). The plugin calculates this automatically from the parent product ID.

Meta uses item_group_id to display the right variant in ads based on what the shopper has browsed. Always map this field for variable products.

Product identification

Meta AttributeSuggested MappingNotes
gtinGlobal Unique ID (GTIN, UPC, EAN, or ISBN)The product’s Global Trade Item Number (UPC, EAN, or ISBN). Use the manufacturer-assigned value only. EU stores must include a GTIN for all branded products.
mpnMPNManufacturer Part Number. Use when you don’t have a GTIN.
identifier_existsPlugin CalculationThe plugin sets this automatically. It tells Meta whether a GTIN or MPN exists for the product.

For handmade or custom products with no GTIN or MPN, set identifier_exists to false using a Static Value.

These fields aren’t strictly required, but they improve ad targeting and reduce the risk of disapprovals.

Meta AttributeSuggested MappingNotes
google_product_categoryGoogle Product CategoryUse Google’s taxonomy. Must be at least two levels deep, e.g., Apparel & Accessories > Clothing. Accepts the full path or the numeric category ID.
product_typeCategory PathYour WooCommerce category structure (e.g., Men > Jeans > Slim Fit). Not from Google’s taxonomy, use your own.
fb_product_categoryMeta’s own taxonomy. Use this alongside google_product_category if you want to target Meta-specific product categories.
additional_image_linkAdditional ImageUp to 20 extra product images. Carousel ads and Shop listings use these.
sale_priceSale PriceSame format as price. Map to your WooCommerce sale price field.
sale_price_effective_dateSale price effective dateISO 8601 date range for the sale window. Format: 2025-12-01T00:00-08:00/2025-12-26T23:59-08:00.
colorColorWord descriptions only (e.g., Forest Green). No hex codes.
sizeSizeWord, abbreviation, or number with a unit (e.g., UK 10). Don’t include the word “size”.
genderGenderAccepted values: femalemaleunisex.
age_groupAge GroupAccepted values: adultall agesteenkidstoddlerinfantnewborn.
materialMateriale.g., CottonLeather. Up to 100 characters.
patternPatterne.g., PlaidFloralSolid. Up to 100 characters.
custom_label_0 to custom_label_4Free-text fields for your own campaign segmentation (e.g., Summer SaleHigh MarginClearance). Meta doesn’t display these in ads — you use them in Ads Manager to build product sets.

For fixed values, like condition or gender, click the field type dropdown, select Static Value, and type the value directly. You can add more optional fields at any time by clicking + Add field mapping.

Click Save & Continue to proceed to Category Mapping.

Step 3: Category mapping

Map your WooCommerce categories to Google’s product taxonomy (Meta uses Google’s taxonomy for google_product_category). On the left, you’ll see your store categories; on the right, type at least four characters to see taxonomy suggestions. Map as many categories as possible. Unmapped categories are more likely to trigger warnings in Commerce Manager.

Click Save & Continue to proceed to filters.

Step 4: Filters (optional)

Filters let you include or exclude products based on conditions — for example, excluding out-of-stock products or only including products above a certain price point. For a full walkthrough, see How to create filters for your product feed.

Step 5: Rules (optional)

Rules let you modify product data dynamically using IF/THEN logic. Common uses include:

  • Setting a fallback value when a field is empty (e.g., map description to the short description if the long description is blank)
  • Standardizing color names (e.g., blk → Black)
  • Prepending text to titles to improve ad click rates

See How to create rules for details.

Step 6: Conversion & Google Analytics

Use the Conversion & Google Analytics tab to append UTM parameters to your product links. This lets Google Analytics attribute traffic and conversions to specific campaigns, ad sets, and ads. Toggle Enable Google Analytics tracking on, then fill in your campaign parameters:

  • utm_sourcefacebook
  • utm_mediumcpc
  • utm_campaign: Your campaign name or the feed title
  • utm_content: Ad set or product group name

For a detailed guide, see How to configure UTM tracking parameters for product feeds.

Click Generate Product Feed to build your feed file.

Step 7: Copy your feed URL

Once the feed finishes generating, go to Product Feed → Manage feeds to see it listed. From here you can:

  • Click the Copy URL icon next to the feed URL — you’ll paste this into Meta Commerce Manager.
  • Refresh Feed — triggers an immediate regeneration of the feed file.
  • Edit Feed — reopens the feed wizard to update any settings.
  • Duplicate Feed — creates a copy of this feed with the same settings.

Part 2: Connecting your feed to Meta Commerce Manager

Step 1: Access Commerce Manager

Go to the Meta for Business page and select your business account from the top-left dropdown.

Meta for Business's business portfolio selection

Step 2: Create or open a catalog

If you don’t have a catalog yet, click Get Started or navigate to Catalogs in the left menu. Click Add Product/Catalog, choose E-commerce as the catalog type, and complete the setup wizard.

If you already have a catalog, open it from the Catalogs list.

Step 3: Add your data feed

Inside your catalog, click Data Sources in the left navigation, then select Data Feeds. Click Add Data Feed.

Meta Commerce Manager Data Sources panel showing the Add Data Feed option

Step 4: Choose “Use a URL”

Select Use a URL — this is the recommended option for WooCommerce stores. Meta will automatically re-fetch your feed on a schedule, so your catalog stays in sync without any manual work.

Feed URL Insert Field in Meta Commerce Manager

Paste your Product Feed Pro feed URL into the Enter the URL where your file is hosted field.

Note: Your feed URL must be publicly accessible without a login. If your site has HTTP authentication enabled, enter the credentials in the Authentication section on this screen.

Step 5: Set a fetch schedule

Choose how often Meta should re-fetch your feed:

  • Hourly — Best for stores with frequent price or stock changes
  • Daily — The right choice for most WooCommerce stores
  • Weekly — Only suitable for very static catalogs
Feed Fetch Schedule Modal in Meta Commerce Manager

Set your preferred fetch time (displayed in UTC) and click Next.

Step 6: Save and trigger the first upload

Click Upload. Meta immediately performs the first fetch and starts processing your items. Initial processing takes 15–60 minutes, depending on catalog size. You’ll see a summary of items uploaded, warnings, and errors in the Data Sources dashboard.

Step 7: Review diagnostics

After processing, open the Diagnostics tab inside your catalog. Here you’ll see:

  • Rejected items — products missing required fields or with invalid values
  • Warnings — products with missing recommended fields or image issues
  • Active items — products that passed review and are eligible for ads

Fix any errors in your WooCommerce product data or feed settings, then trigger a manual re-fetch in Commerce Manager or wait for the next scheduled fetch.

Step 8: Connect your catalog to ad assets

Once your catalog is populated, you can connect it to:

  • Facebook Page Shop / Instagram Shopping — to display products in your shop storefront
  • Advantage+ Catalog Ads — in Ads Manager, create a campaign with the Catalog Sales objective and select your catalog
  • Dynamic Retargeting Ads — show previously viewed products to shoppers who visited your site

Troubleshooting common issues

Products rejected — missing required fields
Go back to Field Mapping and ensure all required fields (especially brandcondition, and availability) are mapped or set as static values.
Images disapproved or too small
Check that your main product image is at least 500×500 px and accessible via a public URL. Replace placeholder images with real product photos.
Feed URL not accessible
Verify the feed URL loads correctly in a browser when you’re logged out of WordPress. Check that your server doesn’t block external requests from Meta’s crawlers.
Variant products not grouping correctly
Confirm the item_group_id field is mapped and that variable products have the plugin setting Include Product Variations enabled.
Fewer products than expected
GTIN errors
Only use manufacturer-assigned GTINs. Don’t make up values. If a product genuinely has no GTIN, set identifier_exists to false. See How to Fix GTIN Errors.
Price format errors
Ensure prices are formatted as 29.99 USD — a number, a space, then the ISO currency code. No symbols, no commas as decimal separators.

Frequently asked questions

Do I need a Facebook Pixel to run catalog ads?
No — a Pixel isn’t required to submit a catalog feed or run catalog sales campaigns. But you do need the Pixel installed and firing on your site if you want to run dynamic retargeting ads (ads that show products a specific shopper has already viewed). Without the Pixel, Meta can’t match shopper behaviour to your catalog. If you want to install the Pixel, and optionally the Conversions API (CAPI) for more reliable server-side tracking, Product Feed Pro includes built-in support. See How to Set Up Facebook Conversion API in Product Feed Elite for the full setup guide.
Can I use the same feed for Facebook and Instagram?
Yes. When you connect a catalog to Meta Commerce Manager, it’s automatically available across Facebook, Instagram, and the Audience Network. You don’t need separate feeds for each platform.
How often should I refresh my feed?
Daily is sufficient for most stores. Set it to hourly if your prices or stock levels change throughout the day. Weekly is only appropriate for catalogs that rarely change.
Meta is showing stale prices or sold-out products in my ads. What do I do?
This usually means the feed hasn’t been re-fetched recently. First, trigger a manual re-fetch in Commerce Manager (Data Sources → select your feed → Fetch Now). Then check that your fetch schedule is set correctly. Also, confirm that the plugin’s Refresh Interval is set to regenerate the feed before Meta fetches it.
Do I need the quantity_to_sell_on_facebook field?
No. The field is still available in the field mapping list, but no longer needs to be mapped — Meta retired in-app checkout in August 2025. All product clicks now redirect to your WooCommerce store, so the quantity field does not affect your feed.
I sell in the EU. Are there any extra requirements?
Yes. EU stores must include a GTIN for all branded physical products. Your price field must also include VAT — map it to your WooCommerce price, inclusive of tax.

Need help?

If you have a question or run into any issues, we’re here to help.

For the latest Meta catalog requirements, visit the Meta Business Help Center.

Was this article helpful?

Related Articles

Complete Your Purchase
AdTribes WooCommerce Product Feed

The best WooCommerce product feed plugin

  • AdTribes Pty Ltd
    ABN: 40 675 636 816
Product
Resources & Info
Partner Sites
Rymera