Skip to main content

Where Meta's catalogue requirements diverge from Google's

M
Muhammad Norafif
Aug 26, 2026 6 min read

A Google Shopping feed will mostly import into a Meta catalogue. That "mostly" is the expensive part. The file validates, the products appear, and a slice of your catalogue quietly sits in a state Meta never accepted, on attributes that carried a different meaning on the other side.

What you'll take away

  • availability is the field that breaks — Google's four values do not map onto the pair Meta works with.
  • Titles need different lengths — Google caps at 150, Meta at 200 while recommending under 65.
  • Meta requires brand and description — both are required fields there, and optional in most Google categories.
  • Ids are case-sensitive on Meta — SKU-1 and sku-1 are two products in one catalogue.

Why a copied feed validates and still underperforms

Both platforms read a flat product file with familiar column names, which is what makes the copy tempting. What differs is the vocabulary inside those columns and which of them are mandatory. Meta accepts a Google-shaped file and ignores what it does not recognise, so the failure mode is not an error. It is a product that imports with a blank where a required value should be, or a value Meta reads as something you did not mean.

9
required Meta fields
200
Meta title characters
65
before truncation

The attributes you cannot copy across

Meta's catalogue specification requires nine fields: id, title, description, availability, condition, price, link, image_link, and brand. Google's product data specification overlaps on most of those names and disagrees on the details.

AttributeGoogle Merchant CenterMeta catalogue
idMax 50 charactersMax 100 characters, case-sensitive
titleMax 150 charactersMax 200, recommended under 65
descriptionMax 5,000 charactersMax 9,999, plain text, required
availabilityin_stock, out_of_stock, preorder, backorderin stock, out of stock
brandRecommended, required in some categoriesRequired, max 100 characters
image_linkMinimum 500 x 500 pixelsMinimum 500 x 500, recommended 1024 x 1024, 8 MB cap
additional_image_linkUp to 10Up to 20
categorygoogle_product_categoryfb_product_category, or the Google taxonomy

availability: the one that actually costs money

Preorder and backorder rows do not survive the copy

Google gives you four availability values. Meta's catalogue works with a much shorter list, and in practice that means in stock and out of stock. Every row your Google feed marks preorder or backorder needs an explicit decision on the Meta side, because an unrecognised value leaves the item without a usable availability state. On a launch catalogue that can be a meaningful share of your best products.

The reverse direction matters too. Meta's checkout surfaces use quantity_to_sell_on_facebook, a field Google's specification has no equivalent for. An item marked in stock with a quantity of zero is not sellable through Meta checkout, and nothing in a Google-shaped file will ever populate that column.

title: same field, different job

Google allows 150 characters and a shopper compares roughly the first 70. Meta allows 200 and recommends staying under 65, because its placements truncate earlier and the surrounding creative carries more of the message. Copying a 140-character Google title into Meta is not an error. It just means the part that sells gets cut, in a placement where the image was already doing most of the work.

Write once, transform per channel

The maintainable pattern is one source of product data and a per-channel transformation on top of it. A rule that trims the title to its first clause for Meta while sending the full string to Google keeps both correct without maintaining two catalogues by hand.

Several devices showing different shopping channels
One catalogue, two vocabularies. The transformation layer is where the difference belongs.

Identifiers: brand does more work on Meta

On Google, brand sits alongside gtin and mpn under the identifier_exists switch, and catalogue matching leans on the GTIN. Meta requires brand outright as one of its nine fields, and treats a missing one as an incomplete product rather than a matching inconvenience. A private-label catalogue that runs fine on Google with identifier_exists set to no will still need brand filled in on every Meta row.

Case sensitivity: the silent duplicate

Meta ids are case-sensitive, so SKU-1001 and sku-1001 are two separate products in the same catalogue. Google normalises more forgivingly. A feed built by joining exports from two systems, one of which lowercases SKUs, produces duplicates on Meta that never appeared on Google, and they compete against each other in the same ad set.

An import checklist that catches the divergences

Run this before pointing Meta at your Google feed

1
Count your preorder and backorder rows — decide what each becomes on Meta before the import, not after.
2
Check brand coverage — every row needs one, including private label and handmade items.
3
Check description coverage — it is required on Meta and frequently blank in feeds built for Google.
4
Lowercase-collide your ids — if two rows match once case is ignored, you are about to create duplicates.
5
Measure the first 65 characters of every title — that is the Meta-visible portion, and it should still identify the product.
The short version
The columns match. The vocabularies don't.
A Google feed imports into Meta cleanly enough to look finished, which is why the gaps show up in performance data long before they show up in an error report.

Common questions

Can I use the same product feed for Google and Meta?

You can point Meta at a Google feed and it will import, but availability values, required fields, and title length differ enough that part of your catalogue lands incomplete. Keep one source of product data and apply a per-channel transformation instead of maintaining two files.

What availability values does a Meta catalogue accept?

Meta's catalogue works with a much shorter vocabulary than Google's four values, centred on in stock and out of stock. Google's preorder and backorder rows need an explicit mapping decision before import, since an unrecognised value leaves the item without a usable state.

How long should a product title be for Meta ads?

Meta accepts up to 200 characters and recommends staying under 65 so the title is not truncated in placements. If your titles were written for Google's 150-character field, trim the Meta version to the first clause that still identifies the product.

Is brand required in a Meta catalogue?

Yes. Brand is one of Meta's nine required fields, so private-label and handmade products need a brand value even when they carry no manufacturer identifiers. On Google the same products can run with identifier_exists set to no.

Free tool

Not sure if your feed has errors?

Run your Google Shopping, Meta, or TikTok product feed through our free validator and get a prioritized error report before channels reject your products.

Check my feed for errors

Editorial note

Written by Muhammad Norafif

This article was published on August 26, 2026 and last updated on August 26, 2026. NextFeed builds product feed management software for Shopify, Google Shopping, Meta, and other commerce channels.

Share this insight

Comments (0)

Please login to leave a comment.

No comments yet. Be the first to comment!

Never miss a feed update

Join merchants who receive our weekly insights on ecommerce data automation and strategy.

Get in touch

Get answers before feed issues cost you revenue.

Reach out for onboarding help, channel setup questions, custom workflow advice, or partnership conversations.

Typical reply

1 business day

Best for

Setup & fixes

Coverage

100+ channels

We'll never share your info with third parties.