Cross-channel product identity: when are two listings really the same item?

Before you compare stock, price, or drift across channels, you need to know that the listings represent the same sellable unit. Similar names are not enough, and different names do not rule it out.

This guide explains how listings move from “looks like the same item” to confirmed shared identity, what counts as evidence, and why GNIZDO leaves an item unconfirmed rather than guessing.

The short version

Don’t compare stock between two listings until you are sure they are the same thing you sell: same size, same pack, same variant. Similar titles prove nothing, and even a shared SKU can mislead when catalogs reuse codes. When the evidence is unclear, it is safer to leave listings unlinked than to invent a mismatch between two different products.

Product names are descriptions, not identity

Titles drift apart across channels for ordinary reasons: search optimization, marketplace naming rules, pack sizes and bundles, variation naming, translation, and merchandising copy. The same item can carry three different titles, and three different items can carry the same title.

So an exact title match is neither required nor sufficient. A title tells you which listings are worth looking at together; it does not tell you they are the same thing.

Map the sellable unit, not the product family

Identity belongs at the level a customer actually buys: a simple product, a WooCommerce variation, a Shopify variant, an Etsy listing or listing variation, or the equivalent unit on another channel.

A parent product with five sizes is not one item. Linking two parents because their names match would compare a 500 g bag on one channel with a 1 kg bag on another. Each size needs its own identity.

Candidate, confirmed identity, and stock intent

Three different questions get blurred together under “mapping”. Keep them apart:

Candidate
Two listings look like they may be the same sellable item, suggested by a SKU, GTIN, title, variant attributes, or your own knowledge. A candidate is not yet a cross-channel conclusion.
Confirmed shared identity
There is admissible evidence that the listings represent one shared item. Only now is item-level cross-channel comparison eligible.
Stock intent
Whether the confirmed listings should expose the same quantity. That is a policy question, answered separately.

A listing that is not linked to anything is still a valid observation of its own channel. Channel-exclusive items are normal, and “no confirmed identity” is a state, not an error.

How strong is each kind of evidence?

How GNIZDO treats each kind of identity evidence today. There are no confidence scores: evidence either meets an explicit rule or it does not.
Evidence What it can establish
Seller confirmation Confirmed shared identity. You know your catalog; an explicit confirmation is valid on its own.
GTIN Confirmed shared identity automatically, when the same valid GTIN appears on two or more channels and nothing conflicts with it.
SKU Confirmed shared identity automatically only when the SKU is exactly the same, unique on each participating channel, and no conflicting valid GTIN says otherwise. Otherwise it is a candidate.
Title A candidate for your review, never automatic confirmation.
Variant attributes Useful context when you review a candidate. Not an automatic rule.
Price, stock, images, platform product IDs Not identity evidence. Prices and quantities are what you want to compare, and platform IDs only mean something inside their own channel.

Why a matching SKU can still mislead

SKUs are seller-made labels, and catalogs reuse them in ways that break one-to-one matching:

  • One SKU shared by several sizes or colors of the same product.
  • An old SKU reused for a different item after a catalog migration.
  • A bundle and the single item built on the same base code.
  • A SKU that is unique on one channel but appears on two listings on another.
  • A long SKU that a platform may have cut short, so two different codes now look identical.

In each case, linking by SKU would manufacture a shared identity between items that are not the same. GNIZDO fails closed: when the evidence is duplicated, conflicting, or ambiguous, the listings stay unconfirmed.

Automatic does not mean fuzzy

GNIZDO confirms shared identity automatically only through two exact, reproducible rules: an exact valid GTIN, or an exact SKU that is unique on each participating channel with no conflicting valid GTIN. Letter case and surrounding spaces in a SKU are ignored; nothing else is approximated.

Even an exact match is blocked when:

  • the identifier appears on more than one listing within a channel;
  • the listings carry different valid GTINs;
  • the identifier already belongs to a confirmed identity, or to a listing you deliberately unlinked;
  • the SKU may have been truncated by a platform length limit;
  • a channel’s catalog evidence is not currently trusted as fresh.

There is no title similarity scoring or AI matching behind automatic confirmation. If a rule cannot prove the link, the decision stays with you.

What happens when identity cannot be proven

  • Each channel observation remains valid evidence of that channel.
  • The listing stays channel-scoped, without a cross-channel identity.
  • GNIZDO can suggest candidates for review, grouped by exact SKU or exact title, which you confirm or ignore.
  • No item-level cross-channel mismatch conclusion is produced for that listing until identity is confirmed.

The result is a clear limitation (“not compared”) rather than a false mismatch between two items that were never the same.

How identity was confirmed is recorded

Every confirmed identity carries its provenance and confirmation time: confirmed by the seller, confirmed by the exact GTIN rule, or confirmed by the exact unique SKU rule. Any other source is not accepted as confirmation.

Because provenance is part of the data rather than a label in one screen, a person reviewing a finding, an agent reading the API, or a report can all see why two listings are being compared. If you add a listing to an automatically confirmed identity yourself, the identity becomes seller-confirmed.

Same item does not mean same quantity

Confirmed identity answers one question: are these the same item? It does not answer whether their quantities should match.

A buffer, a cap, a separate allocation, or another channel policy can make different quantities for the same confirmed item entirely intended. Identity makes the comparison possible; your declared stock intent decides what the comparison means. Design the stock pools and channel policies in the operating-model guide, then check whether a difference is actually a mismatch.

Where GNIZDO fits

GNIZDO is detection-first. It keeps each channel’s observations as they were reported, maintains confirmed shared identity with its provenance, and interprets cross-channel evidence only for items whose identity is eligible.

Confirming an identity links listings for comparison inside GNIZDO. It does not merge, rename, or rewrite products on your channels, and it does not synchronize inventory between them.