Facebook Catalog Feed Converter

Turn a Google Shopping product CSV into a Meta (Facebook and Instagram) catalog feed, with the availability values Meta actually accepts.

Describe the result you need. AI will set up the tool and ask for any missing details.

Configure with AI

Enter to submit · Shift + Enter for a new line

Sent to AI. Leave out passwords and private customer data.

Your details

Your Meta catalog feed

facebook-catalog-feed.csv
id,title,description,availability,condition,price,link,image_link,brand
SKU-001,Organic Cotton Tee - Black - M,Soft organic cotton crew neck t-shirt.,in stock,new,24.00 USD,https://example.com/products/cotton-tee?variant=1,https://example.com/img/tee-black.jpg,Your Brand
SKU-002,Organic Cotton Tee - White - L,Soft organic cotton crew neck t-shirt.,in stock,new,24.00 USD,https://example.com/products/cotton-tee?variant=2,https://example.com/img/tee-white.jpg,Your Brand
SKU-003,Wool Runner Sneaker,Machine washable wool sneaker.,in stock,new,,https://example.com/products/wool-runner,,
SKU-004,Canvas Tote Bag,,in stock,used,18.5 USD,example.com/products/tote,https://example.com/img/tote.jpg,

2 rows had an availability value Meta doesn't use (preorder or backorder). They were set to "in stock"; check them in Commerce Manager.

4 products converted. Meta only accepts "in stock" and "out of stock" for availability.

How the columns map

Meta's Commerce Manager catalog uses mostly the same idea as a Google Shopping feed, but with a few differences that trip up a straight copy-paste:

Google ShoppingMeta catalogNote
availability: in_stock / out_of_stock / preorder / backorderavailability: "in stock" / "out of stock"Meta only accepts two values. preorder and backorder are converted to "in stock", with a warning so you can check those rows.
price: "24.00 USD"price: "24.00 USD"Same format, a number and a 3-letter currency code.
conditionconditionnew, refurbished or used, same as Google.
(none)brandMeta expects it as its own column, same as Google.

Uploading to Commerce Manager

  1. 01

    Open Commerce Manager

    Go to your catalog, then Data Sources, and add a new data source.

  2. 02

    Upload the file

    Choose a one-time upload for a quick test, or host the file at a stable URL and set a scheduled fetch for it to stay current.

  3. 03

    Check for errors

    Commerce Manager reports its own errors per item after processing; fix any it flags before your products can run in ads or Shops.

Questions people ask

Can I paste a feed straight from Google Merchant Center?

Yes. Export or copy your Google Shopping CSV and paste it in. Columns are matched by name, so extra Google-only columns are simply ignored.

Why does Meta only show two availability options?

Meta's catalog spec only documents "in stock" and "out of stock" for the availability field. Preorder and backorder items are converted to "in stock" here; review those rows in Commerce Manager since a preorder item usually needs different messaging.

Does image_link need to meet Meta's own requirements?

Yes. Meta wants a JPEG or PNG, at least 500×500 pixels, 8MB or under. This tool passes the URL through as-is; check the image itself meets those limits.

Do I need a brand for every product?

Meta lists brand as a required field for the catalog. Rows with no brand in your source CSV will have a blank brand column here; fill it in before uploading.

Want this builtinto your store?

I'm Emmanuel, a Shopify and WooCommerce developer. If this tool pointed at something you'd rather have fixed for you (a faster store, cleaner product data, a migration, a custom feature), send me a note.

Emmanuel Asika

Emmanuel Asika

Shopify & WooCommerce developer, Dublin

I build and fix online stores: new builds, migrations, speed, SEO and the custom bits apps can't do.

hello@emmanuelasika.com

Last reviewed 30 September 2026.

Sources: Meta for Developers: Catalog product data fields