How do I submit both regular and sale prices to Merchant Center?

The Citead team, updated

In short. Submit the regular amount in price and the lower sale amount in sale_price, matching the website and checking separate sale badge requirements.

Definition: In Google Merchant Center, price holds the regular, non-sale price when the optional sale_price attribute supplies a discounted price. As of October 2026, Google documents that the sale price becomes the current price during the sale; displaying the original price alongside it requires additional conditions.

Key facts

  • Google's sale price specification requires continued submission of the regular price in price when sale_price is supplied.
  • Google's price specification requires price for each product and formats it as a number plus an ISO 4217 currency code.
  • A sale price annotation is Google's sale badge. Google's annotation requirements require a discount greater than 5% and less than 90% for a sale badge, with price-history conditions varying by country and placement.

Which values go in the product data?

Google's sale price documentation gives a small green Google logo T-shirt example with a regular price of 10.99 USD and a sale price of 9.99 USD. The corresponding fields in a tab-separated data source are:

price	sale_price
10.99 USD	9.99 USD

The sale price must be lower than the regular price, with the difference represented in the submitted data. The same documentation permits at most 2 digits after the decimal point and describes automatic rounding of additional digits.

The optional sale_price_effective_date attribute specifies the sale period. Without it, Google uses the submitted sale price immediately.

What must appear on the website?

Google's sale price minimum requirements require both regular and sale prices on the landing page, and only the sale price at checkout. The submitted sale price must match the amount displayed on the landing page and at checkout.

These minimum requirements allow the regular price to appear in a larger font. For sale price annotations, Google's separate annotation guidance says the active sale price should be most prominent and the original price less prominent, for example struck through or grayed out.

When can the original price and a sale badge appear?

A sale price annotation is Google's sale badge accompanying the current price and a crossed-out original price. Google's annotation requirements distinguish free listings from Shopping ads. Both require the lower sale price, a discount greater than 5% and less than 90%, and both prices displayed on the landing page.

The documented price-history conditions are:

  • For free listings in Australia, Canada, the United States and Japan, Google lists the discount and landing-page conditions without a price-history requirement.
  • For free listings in Brazil, France, Germany, India, Italy, Korea, the Netherlands, Spain and the United Kingdom, the base price must be valid for 30 days within the past 200 days.
  • For Shopping ads in the United States, the base price must have been charged for either 5 days within the past 30 days or 15 days within the past 200 days, whichever condition is met first.
  • For Shopping ads in Australia, Brazil, Canada, France, Germany, India, Italy, Japan, Korea, the Netherlands, Spain and the United Kingdom, the base price must be valid for 30 days within the past 200 days.

These day counts need not be consecutive. Google's sale price specification also states that annotations may be absent even when the requirements are met.

How can eligibility be checked in Merchant Center?

Google's annotation instructions identify this filter for eligible products:

Products > All products > Filter > Has sale badge > Yes > Apply

For local inventory ads using store-specific product pages with in-store availability and price, the same documentation warns that this filter does not accurately reflect annotation status.

FAQ

What if I submit only the price field during a sale?

You should submit the active sale amount in price if you omit sale_price, according to Google's sale price specification. Submitting both attributes preserves the separate regular and discounted values.

Can I put a members-only discount in sale_price?

Google's price specification directs you to submit member prices through loyalty_program where available. This applies to free and paid loyalty programs.

Sources

  1. Google Merchant Center Help, "Sale price [sale_price]", undated
  2. Google Merchant Center Help, "Price [price]", undated
  3. Google Merchant Center Help, "About sale price annotations", undated

Check how a page reads to answer engines. Open the GEO score analyzer

Test a page and see what to fix first

The analysis usually takes less than 10 seconds and needs no account.

400,000+ pages scored in the public benchmark