Product vertical
Health and beauty
Health and beauty feeds sit under advertising policy as much as feed specification. Cosmetics need unit pricing and shade handling, supplements run into healthcare restrictions that vary by market, and anything classed as adult content needs declaring rather than hiding.
Categories this covers
The Google product taxonomy branches these rules apply to. Match your own products against these paths before assuming the extra requirements are yours.
- Health & Beauty
- Health & Beauty > Personal Care
- Health & Beauty > Health Care
- Health & Beauty > Health Care > Nutrition & Food Supplements
Attributes this vertical changes
These sit on top of the attributes every feed needs. A requirement shown here applies because of the category, not because of the channel.
| Attribute | Requirement here | Why |
|---|---|---|
| unit_pricing_measure | Required in some cases | Applies to cosmetics and toiletries sold by volume or weight in markets with unit-pricing rules, which covers most of a skincare or haircare catalogue. |
| unit_pricing_base_measure | Required in some cases | The base the unit price is shown against, typically 100ml for liquids and 100g for solids. |
| color | Required in some cases | Cosmetics are bought by shade. Where the product sits in the Apparel & Accessories branch the colour requirement applies outright; elsewhere it is what makes shade variants distinguishable at all. |
| adult | Required in some cases | Required for products that are adult in nature. Declaring it keeps the rest of the catalogue out of the restrictions that apply when a channel decides for itself. |
| item_group_id | Required | Shade and size variants only work as a picker when they are grouped, and this vertical is almost entirely variant based. |
| gtin | Required | Branded cosmetics and supplements carry barcodes, and this is a vertical where channels lean heavily on identifiers to police what is being sold. |
What catches health and beauty stores out
Supplements are a policy question before a feed question
Nutritional supplements are restricted differently in every market, and some ingredients are refused outright. A feed can be technically perfect and still see items disapproved on policy grounds, which is not something a mapping change fixes. Establish what is sellable per market before optimising the feed.
Shade names are not colours
A foundation catalogue carries shades like "220 Natural Beige" or "Porcelain". Those belong in the title, where a shopper searches for them. The colour attribute wants a recognisable colour so filtering works, which means mapping shade to a normalised colour while keeping the shade name visible.
Volume lives in the title, not in a field
As with food, the size of a cosmetic is usually part of its name: "Shampoo 250ml". Unit pricing needs that as a number and a unit, and parsing it from titles breaks on travel sizes, duo packs and refills. A metafield is the only stable source.
Before and after imagery gets items rejected
Product images that show results, or that carry text and promotional badges, fall foul of image policy on several channels even though the feed itself is valid. Shopify stores frequently use exactly those images as the featured image, so the mapping question is which image to send rather than whether one exists.
Declaring adult content protects the rest of the catalogue
Leaving the adult attribute off an item a channel considers adult does not hide it. It gets classified anyway, and the consequences can reach beyond the single item. Declaring it is both the honest and the safer mapping.
Where these values come from in Shopify
Shopify has a field for some of these and nowhere to put the rest. Both cases are worth knowing before you start mapping.
- unit_pricing_measure
- A metafield holding volume or weight with its unit. Frequently absent in stores that grew from a small range, and worth backfilling once rather than parsing repeatedly.
- color
- From the shade variant option, normalised to a real colour name. Keep the original shade in the title so search still matches on it.
- adult
- Usually a tag or metafield set deliberately on the affected products, since nothing in Shopify classifies content.
- image_link
- Prefer a clean product-only shot. Where the featured image is a results or lifestyle image, map an alternative position from the product's image list for this purpose.
Frequently asked questions
Why are my supplements disapproved when the feed is valid?
Because supplements are restricted by advertising policy, which is separate from feed validation. The rules differ per market and some ingredients are refused entirely, so the item can be perfectly formatted and still not eligible.
How should cosmetic shades be mapped to colour?
Keep the shade name in the title and send a normalised colour in the colour attribute. Shade names are what shoppers search for, but they are useless as filter values.
Do cosmetics need unit pricing?
In markets with unit-pricing rules, yes, for anything sold by volume or weight. That covers most of a skincare, haircare and fragrance catalogue, and the value has to come from a structured field rather than the product name.
What image should a beauty product feed use?
A clean image of the product itself, without added text, badges or before-and-after comparisons. Those breach image policy on several channels even when the feed is otherwise correct.
Attributes involved
- item_group_id The item_group_id attribute groups the rows that are variants of the same product, so a channel can show one listing with a size or colour picker instead of several unrelated listings. On Shopify the natural source is the product ID, shared by every variant row generated from that product.
- gtin The gtin attribute is the globally unique barcode number a manufacturer assigns to a product, covering UPC, EAN, JAN and ISBN formats. Channels use it to match an item against the same product sold elsewhere, and on Shopify it comes from the variant's barcode field, which is optional in the admin and therefore frequently empty.
- image_link The image_link attribute is the URL of the single main image a channel shows for an item. On Shopify the correct source is the variant's own image where one is assigned, falling back to the product's featured image, because a feed that shows the wrong colour is worse than one that shows a generic shot.
Errors this vertical runs into
- Image link cannot be crawled An image crawl failure means the channel could not retrieve the file at image_link, or retrieved it and judged it unusable. On Shopify the URL itself is rarely wrong, so the cause is usually a rate limit hit during a first full crawl, a temporary CDN response, or an image whose content breaks policy rather than one that is genuinely missing.
- Missing value: GTIN The "Missing value: GTIN" issue means a channel believes a product has a manufacturer-assigned barcode but the feed did not supply one. On Shopify it almost always traces back to the variant barcode field, which is optional in the admin and therefore left empty across large parts of most catalogues.
Related concepts
Channels this applies to
- Google Shopping Google Shopping is the surface where Google displays product listings from a merchant's catalogue, fed by a product feed uploaded to Google Merchant Center. Google's product data specification is the most detailed of the major channels, and the one whose attribute names the other channels tend to borrow.
- Meta Meta's product catalogue is the data source behind Facebook and Instagram Shops, Advantage+ catalogue ads and dynamic retargeting, populated by a product feed uploaded to Commerce Manager. Its attribute names largely mirror Google's, but its accepted values and its handling of variants differ enough to break a feed copied straight across.
- Microsoft Advertising Microsoft Advertising runs product ads across Bing, Yahoo and the Microsoft Audience Network from a catalogue uploaded to Microsoft Merchant Center. Its feed specification is closely modelled on Google's, which makes it the cheapest additional channel to launch once a Google Shopping feed already exists.
- Pinterest Pinterest turns an uploaded product feed into Product Pins, which are shoppable pins that carry live price and availability from the catalogue. Its feed specification borrows Google's attribute names, and its distinguishing requirement is that every item needs a genuinely usable image, because the image is the entire unit of discovery on Pinterest.
Primary sources
Channel specifications change. These are the official documents this page is based on.