Product variant data: fix size, colour and availability mismatches

Product variant data is the information that tells related sellable items apart, such as size, colour or material, together with each item's own identifier, image, price and availability. Before rewriting any copy, trace one purchasable variant from its source record to the page and feed a shopper actually reaches.

By . Updated .

In short

  • Variant data tells related sellable items apart and carries each item's own identifier, image, price and availability; a parent record's “in stock” says nothing about one size.
  • A feed row can be right while its landing page defaults to another colour, price and stock message, so the investigation covers selection, URL behaviour, mappings and published versions.
  • Trace one variant in five steps: a comparison record, the grouping, the link a shopper receives, images and offers together, then the cause and the neighbouring variants.
  • Merchant Center groups variants under one item group ID and asks for a price that matches the landing page; Google's markup asks for a distinct URL per variant.
  • Accurate variant records give AI systems clearer evidence about the exact offer without guaranteeing a recommendation, so observe visibility separately with a defined method.

What counts as product variant data

Variant data describes the differences between related items a customer can buy: size, colour, material or another option that genuinely changes what arrives. Each variant also carries the operational information for its own offer. Fixing it means making sure the item a shopper selects is the same item that is described, priced and offered at every step. Every value can exist somewhere in your systems and the shopper can still get an unreliable answer.

Separate family facts from variant facts. A jacket range may share one care instruction while colour, size, image, identifier, price and stock differ. A shared paragraph is useful only while it stays true for every item that inherits it.

How a feed carries that split is a retailer's own decision, and the decisions differ. SO-ME, the consumer shopping platform Sighted powers, receives feeds from ASOS, REVOLVE, Vinted, M&S, New Look, Debenhams and EGO, and the attributes each carries and the way each categorises the same kind of product differ from one to the next.

A parent record's “in stock” does not mean every size is available, and a family-level “from £60” does not tell a shopper what the £75 variant they selected costs.

An illustrative variant mismatch on a jacket

Imagine a jacket offered in navy and green, each in small and medium. Navy small costs £60 and is out of stock; green medium costs £75 and is available. These are demonstration values, not a real retailer's records.

The feed row for green medium points to the general product URL. On arrival the page defaults to navy small: the main image is navy, the visible price is £60 and the availability message says “sold out”.

The source data may be correct while the landing experience is wrong. So the investigation checks selection, URL behaviour, mappings and the published versions of the record, and not only whether someone typed the right colour into a spreadsheet.

1. Create a variant-level comparison record

For each sampled variant, record, with the time you observed them:

  • the internal SKU and the parent or family reference;
  • the distinguishing options;
  • the approved identifier;
  • the image, price and availability;
  • the destination row and the landing URL.

Compare values that refer to the same market and offer. A different currency or a regional stock pool can look like a conflict when it is a difference of scope, so make the scope explicit before changing anything.

Group the problems by symptom: wrong default selection, wrong image, stale offer, duplicate identifier or missing option. Each symptom then goes to the person who can fix it, rather than the content team receiving a list of unrelated technical failures.

2. Check how the variants are grouped

Google Merchant Center's item group ID groups variants of one product while each keeps its own record: every variant is submitted with its own id and its own colour, size or other distinguishing values, and they share the group's ID. As of October 2026 Merchant Center requires it for variants in free listings, and in Shopping ads for the UK and several other countries. The group identifier does not replace each item's own record.

For the illustrative jacket, confirm that the four sellable items map to the intended family and carry their own options. Do not give every record one arbitrary SKU as its identity because all four share a product name.

Then inspect how the website represents the same relationships. Google's product variant structured data documentation describes ProductGroup markup and its properties, with different rules for variants selected on one page and variants on separate pages. Have your implementation owner check the approach against how your own product pages are built.

Open the published URL for green medium in a fresh browser session and check:

  • Does it select green medium or reset to a default?
  • Can the visitor see the selected options clearly?
  • Does changing the size keep the chosen colour?
  • Check mobile as well as desktop where the selector behaves differently.

Google's variant markup guidance asks for each variant to be preselectable through its own distinct URL, by path or query parameter, and Merchant Center asks for a price that matches the landing page, so the page has to show the details of the variant it carries, its colour, price, availability and image included. A correct identifier in a feed cannot repair a selector that silently changes what the shopper is buying.

Record the behaviour you observe before proposing a fix. The answer may be a supported variant URL, a corrected mapping or a change to the product page itself. Do not copy another store's query parameters without confirming how your own platform selects a variant.

4. Verify variant images and offers together

Match the main image to the variant's actual appearance. A shared lifestyle image may help sell the range, but it should not hide which colour is selected. Keep the verified colour value even when the brand uses a creative colour name for the shade.

Then trace price and availability to the system that owns them. Note when the source changed, when your publishing process ran and when the destination processed the update. That separates a broken mapping from an expected processing delay.

Write down what counts as an unacceptable delay for your business. There is no universal synchronisation interval to aim for: a fast-changing promotion and a stable catalogue need different things.

5. Correct the cause and test the neighbouring variants

In the jacket example, changing “navy” to “green” in one description would not touch the default-selection problem. Repair the route or the mapping, then check that green medium arrives with the right options and offer.

Test the other three variants as well. A rule change can fix one row while breaking its siblings, so include an unavailable item and one at a different price, which exercise the differences that matter.

Keep a rollback record and the previous mapping. Release a small change first and widen it only once the output behaves as intended. The product data optimisation guide covers approving facts at source, and the guide to feeds, schema and product pages covers which of them publishes what.

Why variant accuracy matters for AI shopping

A detailed shopping request can turn on one size, finish or available configuration, which family-level information may not answer. Accurate variant records give shoppers and AI systems clearer evidence about the exact offer being weighed.

Accuracy does not guarantee an assistant will pick the product. OpenAI's feed takes one row per variant and asks for an image that shows the variant it belongs to, and a row that fails its checks is left out, as the ChatGPT troubleshooting guide sets out.

First establish that the published variant is right; then observe recommendations and the relevant customer journeys with a defined method, as the AI shopping measurement guide sets out.

Questions retailers ask

Should every size have the same description?

Shared copy is reasonable when every statement in it applies to every size. Keep measurements, fit information and offer details that differ at the level they belong to rather than forcing them into one generic paragraph.

Does a valid feed mean your variant journey is correct?

No. A feed can pass its checks while its landing URL selects a different item. Verify the destination a customer actually reaches and the options it shows selected.

Can AI fix variant mismatches automatically?

AI can help find inconsistencies and organise them. Which value is correct still comes from the authoritative record, the approved mapping and the live behaviour of the page.

What to do next

  1. Sample a few variants and build a comparison record for each, scoped to one market and offer, with the time you observed each value.
  2. Check the grouping: each variant its own record and options under one item group ID, and the page's ProductGroup markup checked by your implementation owner.
  3. Open each variant's published URL in a fresh session, on mobile as well as desktop, and record what it selects before proposing a fix.
  4. Match the main image to the variant, then trace price and availability to the system that owns them, noting when each stage ran.
  5. Repair the route or the mapping, then test the sibling variants, including an unavailable item and one at a different price.
  6. Keep a rollback record, release a small change first, and only then observe recommendations with a defined method.

What Sighted does for variant data

For a Shopify store with the Google Shopping add-on, Sighted's Merchant Center feed sends a product with several variants as one item per variant, up to 100: each carries that variant's price, stock, barcode and SKU, and its own colour, size and image where the variant has them, all grouped under one item group ID.

  • For a catalogue imported from a file, the readiness score marks a product with no item group ID.
  • Each item links to the product page, so what that page selects on arrival is still worth checking as in step 3.
  • The free AI visibility audit reads the variants each of up to 50 product pages states, and the enrichment that fills the rest of the record, written back on Shopify, is the technology behind SO-ME.

The free scan reads up to 50 of your product pages, variants included, before you trace a single row.

Get your free scanFree, no account, a report in a few minutes.