currency-amount price

price

The product's standard selling price including the currency code. The single field every shopping channel reads first — wrong prices, wrong currency, or mismatches against the landing page break delivery outright.

Also known as: regular_price , list_price

Channel support

Channel Status Field name Notes
Google Merchant Center Required price Must match landing page exactly, including VAT treatment. Format: amount + space + ISO 4217 code. Docs →
Meta Commerce Manager Required price Same format as Google. Decimals required; '29' instead of '29.00' is rejected.
TikTok Shop Required price
Pinterest Catalog Required price
Amazon Required standard_price
Bing Merchant Center Required price

Why it matters

Price is the field channels validate against your landing page on every crawl. A mismatch — even by a penny — is a blocking issue. Price also drives competitive-set placement (Google ranks products against similar-priced competitors), so misrepresenting price isn't just a compliance issue, it's an auction-position issue.

Price is the field channels validate against your landing page on every crawl, and a mismatch — even by a single penny — blocks delivery. The verification happens at fetch time and again at periodic landing-page recrawls; either path can flag an inconsistency. For sites where prices change frequently (dynamic pricing, regional pricing, promotional cycling), staying ahead of these checks requires more than scheduled feed refreshes — it requires real-time updates via the Catalog Batch API or equivalent.

The format rules are unforgiving. "29.99 GBP" — single space, ISO 4217 code uppercase, period decimal even in EU locales, no currency symbols. Common mistakes that look innocuous: "£29.99" (symbol instead of code), "29,99 EUR" (comma decimal), "29.99" (missing currency). Each of these gets rejected. The cause is almost always a feed-generation pipeline that doesn't enforce format; the fix is normalising at the pipeline rather than spot-fixing items.

VAT treatment is the consistency rule most cross-border catalogs miss. UK and EU markets require VAT-inclusive pricing in price — the customer sees the final price, and the feed should match. US and Canada typically use VAT-exclusive pricing with tax calculated at checkout. Mixing the two — VAT-exclusive feed price with VAT-inclusive landing page, or vice versa — triggers Mismatched value [price] flags universally. For multi-region catalogs, separate region-specific feeds with appropriate VAT treatment per region is cleaner than one mixed feed.

The strategic context: price also drives competitive-set placement. Google ranks Shopping listings against other listings of similar-priced products, so misrepresenting price (showing an artificially low feed price that mismatches the landing page) puts your listing in a competitive set where you can't actually compete on price when users land. It's a short-term gain at the cost of medium-term suppression as the auction recalibrates and your listing is demoted for delivering worse-than-promised value at checkout.

The schema.org markup angle catches sites that look fine to users but fail crawler validation. Google reads schema.org/Product markup on the landing page when checking price; if the schema price is different from the visible HTML price, Google trusts the schema. So a landing page that visually shows "£29.99" but has stale "£24.99" in its schema markup gets flagged as mismatched against a feed that correctly shows £29.99. Audit schema markup as part of price diagnosis, not just visible page content.

Currency conversions in dynamic-pricing systems are another quiet source of mismatches. The base price in your product database might be USD; the landing page converts to GBP at the current exchange rate; the feed exports at a slightly older rate. Even a 1-2% conversion rate drift produces price mismatches that trigger flagging. The fix is to lock conversion rates per feed-refresh cycle so the landing page and the feed use the same rate at the same time.

For pricing strategy beyond just feed validity, the listed price drives placement quality more than most teams realise. Items priced below the competitive-set median win on price-sensitive searches but lose on perceived-quality searches; items priced above the median win on quality positioning but lose volume. The optimal price in the feed isn't necessarily the lowest price — it's the price where total revenue (price × probability-of-purchase × conversion-rate-given-click) is maximised. Most catalogs leave significant margin on the table by under-pricing items where higher prices would actually convert at similar or better rates.

Format rules

  • Format: 'amount CURRENCY' with a single space (e.g. '29.99 GBP')

    Applies to: Google Merchant Center, Meta Commerce Manager, Pinterest Catalog, Bing Merchant Center

  • Decimal point required — '29.99' not '29,99' (even in EU locales)

    Applies to: Google Merchant Center, Meta Commerce Manager, TikTok Shop, Pinterest Catalog, Amazon, Bing Merchant Center

  • Currency must be ISO 4217 uppercase three-letter code (USD, GBP, EUR, JPY)

    Applies to: Google Merchant Center, Meta Commerce Manager, Pinterest Catalog, Bing Merchant Center

  • Must match the landing-page price exactly, including VAT treatment

    Applies to: Google Merchant Center, Meta Commerce Manager, Pinterest Catalog, Bing Merchant Center

  • No currency symbols ('£', '€', '$')

    Applies to: Google Merchant Center, Meta Commerce Manager, Pinterest Catalog, Bing Merchant Center

Valid examples

29.99 GBP

Standard UK format

129.00 USD

US dollar with explicit decimals

1250.50 EUR

Higher-value item, EU

Common mistakes

£29.99

Currency symbol instead of code

29,99 EUR

Comma decimal — rejected outside specific locales

29.99

Missing currency

FAQ

Should price include or exclude VAT?

Whatever the landing page shows. Most EU and UK Merchant Center feeds require VAT-inclusive prices. The feed must match the landing page exactly — mismatches between the two are blocking.

What if my price changes during the day?

Use the Catalog Batch API for real-time updates. Scheduled fetches (even hourly) leave a window where the feed has the old price. Most teams running dynamic pricing push updates via API rather than waiting for scheduled fetches.

Can I use sale prices in the price field?

No — use sale_price for promotional pricing. The price field should always hold the regular price. Putting sale prices in price tells the algorithm the discount is permanent and dampens the urgency signal.

Why is my price flagged as too low?

Google's 'suspicious price' flag fires when a price is dramatically lower than competing listings of the same product. Common causes: typo (missing a zero), currency confusion (showing GBP when USD intended), or counterfeit suspicion.

Last reviewed: 26 May 2026

Free plan · No card

Why wait? Try it free today.

Stop managing feeds manually. Start optimising with AI in 30 seconds.

  • Free plan, no credit card required
  • 1 brand, 1 feed, 100,000 products per feed
  • Full AI Product Optimisation, Rule Engine, and 200+ channel exports
  • Pay only for AI credits when you need them