unit_pricing_measure in Google Shopping: formats and when it's required
The unit_pricing_measure and unit_pricing_base_measure attributes explained, covering where EU law requires per-unit pricing, valid units, and worked examples.
unit_pricing_measure tells Google how much product is in the package, such as 750ml, 2.5kg, or 100 sheets, so it can display a per-unit price like £1.20/100ml next to your offer. In the EU and UK it's legally required for many measurable goods like food, drink, cosmetics and cleaning products. The companion attribute unit_pricing_base_measure sets the denominator the price is shown per.
The unit pricing attributes
| Attribute | What it is | Example |
|---|---|---|
unit_pricing_measure |
The quantity of product in the package | 750 ml |
unit_pricing_base_measure |
The denominator to display price per | 100 ml |
Together with price, they let Google compute and display a comparison price. A shampoo at 4.50 GBP, measure 750 ml, base measure 100 ml shows as £0.60 / 100ml, which is how shoppers actually compare a 750ml bottle against a 250ml one, and how regulators require measurable goods to be priced.
Where it's legally required
EU price-indication rules (and their UK equivalent) require a unit price wherever consumers buy goods sold by measure, supermarket-style categories above all:
- Food and drink
- Cosmetics, toiletries and personal care
- Household cleaning products, detergents, liquids
- Paints, oils, lubricants and similar measurable goods
- Anything else sold by weight, volume, length or area
For these products targeting EU countries, the UK or Switzerland, Merchant Center enforces the attribute, and omitting it produces warnings and, in enforced categories, disapprovals. Outside those markets it's optional, but any category where shoppers compare pack sizes benefits from it: the per-unit figure appears directly in Shopping results and makes a well-priced large pack visibly cheaper instead of just bigger.
Format and worked examples
The value is a number plus a unit, separated by a space. Measure and base measure must share a dimension.
| Product | price |
unit_pricing_measure |
unit_pricing_base_measure |
Displays as |
|---|---|---|---|---|
| Shampoo 750ml | 4.50 GBP |
750 ml |
100 ml |
£0.60 / 100ml |
| Coffee beans 2.5kg | 39.99 GBP |
2.5 kg |
1 kg |
£16.00 / kg |
| Laundry pods, 50 washes | 12.00 GBP |
50 ct |
1 ct |
£0.24 each |
| Vinyl flooring | 89.00 GBP |
5 sqm |
1 sqm |
£17.80 / m² |
| Fabric by the metre | 7.50 GBP |
3 m |
1 m |
£2.50 / m |
Rules worth pinning up:
- Net quantity, not gross: the amount of product, not product plus packaging.
- Decimal with a full stop:
2.5 kg, not2,5 kg. - Base measure should be a standard denominator:
1 kg,1 l,100 ml,100 g,1 ct,1 sqm. Google may normalise unusual ones. - Multipacks measure the total: a 6 x 330ml pack is
1980 ml(see bundles and multipacks for the pack attributes themselves).
Deep dive Where unit pricing data goes wrong at feed scale
Unit pricing errors are rarely typed by hand; they're generated by mapping, which makes them systematic:
- The unit-parsing trap. Most platforms store pack size inside the product title or a free-text option ("750ml", "0.75 L", "75cl"), not as a structured quantity. A feed mapping that regex-extracts "750" but drops the unit, or reads "75cl" as 75ml, produces a per-unit price that's wrong by an order of magnitude, and a £6.00/100ml shampoo looks either absurd or fraudulent next to competitors. Extraction needs unit normalisation (cl→ml, l→ml) baked in, not just number-grabbing.
- Variant quantity drift. Size variants share a template, so every size of a product inherits the 250ml measure from the default variant. The 1-litre variant then displays a per-unit price four times too high. Measures must be mapped per variant, exactly like price.
- Dimension mismatches. Mapping a count-based product (tablets, capsules, sheets) into ml because the category template expects volume produces an invalid-value rejection;
ctexists for exactly these. - The legal edge. In enforced markets the unit price isn't cosmetic; a wrong figure is a consumer-law problem on your site as well as a feed problem. The feed-derived unit price, the page's displayed unit price and the physical pack must all agree; the feed is usually the one that lags after a pack-size change ("now 20% extra free" reformulations are the classic trigger).
The reliable pattern is one authoritative structured quantity per variant at the feed layer, validated against the title's stated size, so a "750ml" title with a 500 ml measure gets flagged before Google or a shopper spots it.
How this works in /tools
Enrichment can extract pack quantities from titles and descriptions into properly formatted unit_pricing_measure values, normalising units along the way, and writes them to the supplemental layer, leaving your platform data untouched. Validation flags dimension mismatches, missing measures on categories that require them in your target countries, and measures that contradict the size stated in the title. Coverage counts towards your Feed Health Score; pricing format itself is covered in price, availability and sale_price.
Frequently asked questions
Is unit_pricing_measure required?
It depends where you sell and what you sell. In EU countries, the UK and Switzerland, consumer law requires unit pricing for goods sold by measure (food, drink, cosmetics, household liquids and similar), so Google requires the attribute for those products in those countries. Elsewhere it's optional but still useful for comparison-heavy categories.
What is unit_pricing_base_measure for?
It sets the reference quantity the per-unit price is expressed against. A 750ml bottle with a base measure of 100ml displays as a price per 100ml. If you omit it, Google picks a standard denominator like 1kg, 1l or 100ml.
What units can I use?
Weight (mg, g, kg, oz, lb), volume (ml, cl, l, fl oz, pt, qt, gal, and cubic metres/feet), length (cm, m, in, ft, yd), area (sqm, sqft) and count (ct). The measure and base measure must use the same dimension, so you can't price millilitres per kilogram.
Does the per-unit price on my landing page have to match?
Yes. If your product page displays a unit price (as EU/UK law requires on-site too), the figure Google derives from your feed must agree with it. A feed that says 750ml against a page that says 700ml is a mismatch like any other.