Fix invalid product price in Merchant Center
Invalid or zero prices can block products from showing on Google.
Symptom
Merchant Center sees a malformed, zero, or otherwise invalid price and stops trusting the product.
Exact cause
Google flagged this state because Google Merchant Center is reporting an invalid price for this product. This could mean the price is zero, negative, or in an unsupported currency format. The product will be disapproved until the price is corrected.
This often comes from a zero or negative Shopify variant price, a malformed amount or currency code, broken sale-price logic, a market-specific override, or a feed transform that emits a value Google cannot accept.
Which system wins
Merchant Center approval state is the gating truth for Shopping surfaces, but Google can still use landing-page data to validate or replace submitted price signals through Automatic Item Updates.
Correct edit point
Fix the exact Shopify product or variant price first, then correct the channel, feed, market override, or transformation that submits the invalid value. Finish by verifying the landing page, structured data, and checkout show the same purchasable price.
Manual fix steps
- Open the exact affected product or variant in Shopify and make sure its active Price is greater than zero.
- Check the submitted price uses a numeric amount, a period as the decimal separator, and a three-letter ISO 4217 currency code such as 29.99 USD.
- For a sale, keep the Shopify Compare-at price above the active Price and confirm Merchant Center receives a sale_price lower than price with the intended effective dates.
- Review market-specific fixed prices, the Google & YouTube channel or feed app, feed rules, and supplemental data for transforms that overwrite the Shopify value.
Invalid value is not the same as price mismatch
Use this guide when the submitted price itself is unusable: zero or negative for an ordinary product, missing a valid currency code, or formatted in a way Merchant Center cannot parse. A correctly formatted value such as 29.99 USD can still trigger a separate price-mismatch issue when the landing page, structured data, checkout, or submitted product data shows a different amount or currency.
Do not merge these diagnostics. Fix the value format and source here. Use the Shopify versus Merchant Center price-mismatch guide when each value is valid on its own but the systems disagree.
Valid and invalid price examples
- Valid: 29.99 USD — numeric amount, period decimal separator, and ISO 4217 currency code.
- Valid: 45 EUR — whole-number amounts are allowed when paired with the currency code.
- Invalid for an ordinary product: 0 USD or -5.00 USD. Google documents limited zero-price exceptions for certain mobile devices sold with a contract or installment plan; do not apply that exception to a normal Shopify product.
- Invalid format: $29.99 — the currency symbol does not replace the required three-letter currency code.
- Invalid format: 29,99 USD — use a period, not a comma, as the decimal separator.
- Invalid format: 29.99 US — US is not an ISO 4217 currency code; use USD.
Shopify sale-price and timing checks
- For a Shopify sale, the Price field is the current amount the shopper pays and Compare-at price is the higher original amount. Check the exact variant; one product can contain different variant prices.
- Check Shopify Markets before assuming the base product value is what the shopper sees. A fixed market price can override the product or variant price for that market.
- In Merchant Center product data, keep price as the original base price and submit the temporary lower amount in sale_price. Google requires sale_price to be lower than price and accepts no more than two digits after the decimal.
- If sale_price_effective_date is omitted, Google says the sale price can be used immediately. When you submit the date attribute, use one ISO 8601 start/end range with times and time zones so the window does not shift at midnight or default to UTC.
- Check the Google & YouTube channel, feed app, feed rules, supplemental data, and scheduled promotions for stale sale values. Automatic item updates can correct some temporary discrepancies, but Google says they do not replace regular product-data updates.
Current primary sources
- Google Merchant Center: Price [price]Required price format, landing-page and checkout requirements, ISO 4217 guidance, and automatic item updates.
- Google Merchant Center: Product data specificationPrice syntax, period decimal separator, ISO 4217 currency codes, and cross-surface consistency requirements.
- Google Merchant Center: Invalid value for category [price]The zero-price diagnostic and limited mobile-device exception.
- Google Merchant Center: Sale price [sale_price]Sale-price format, decimal precision, base-price relationship, and immediate use when no effective date is submitted.
- Google Merchant Center: Sale price effective dateISO 8601 date-range syntax, time-zone behavior, and examples.
- Google Merchant Center: Automatic product-data updatesHow Google compares submitted data with landing-page and structured-data price signals.
- Shopify: Setting sale prices for productsPrice, Compare-at price, variants, and market-specific fixed-price behavior.
Common questions
What price format does Google Merchant Center accept?
Submit a numeric amount followed by a three-letter ISO 4217 currency code, such as 29.99 USD. Use a period for the decimal separator and keep the landing page, structured data, and checkout consistent with the submitted amount and currency.
Can a Shopify product have a zero price in Merchant Center?
Not as a normal rule. Google documents a limited exception for certain mobile devices sold with a contract or installment plan. An ordinary Shopify product should use a price greater than zero.
Why is my price valid but still disapproved?
A value can be correctly formatted and still disagree with the landing page, selected variant, structured data, checkout, market price, or sale window. That is a price-mismatch investigation rather than an invalid-value fix.
Will automatic item updates permanently fix an invalid feed price?
No. Google says automatic updates can use landing-page data to correct some temporary differences, but they are not a replacement for regularly submitting accurate product data. Fix the Shopify or feed source that emitted the invalid value.
Validation steps
- In Merchant Center, go to Products → Needs attention, filter for the exact price issue, and open one affected item. Record its item ID, data source, submitted price, currency, sale price, and sale-price dates before editing.
- Open the matching Shopify product and exact variant. Confirm Price is greater than zero, Compare-at price is either blank or higher than Price, and any Shopify Markets fixed price is intentional.
- Inspect the Google & YouTube channel or feed output. Confirm the submitted value uses a period decimal separator and an ISO 4217 currency code, and that sale_price is lower than price during the intended effective-date window.
- Open the exact variant landing page as a shopper in the target market. Confirm the visible amount, Product structured data price and priceCurrency, cart, and checkout all agree with the value Merchant Center should receive.
- Run the normal channel sync or reupload the corrected product data. Do not treat an automatic item update as the permanent source fix.
- Return to Products → Needs attention after Merchant Center processes the update. Confirm the exact invalid-price issue is absent for the item and from the affected-item count; if the remaining issue is a cross-system disagreement, continue with the price-mismatch guide.
Audit related storefront signals
Check which related public signals StoreSteady can observe before you connect the app. A scan cannot determine how Google or another platform will classify or resolve the issue.