# Brand archetypes

Every audited site is classified into one of four archetypes. The archetype decides
which structured-data signals the site is expected to have, and which shopper questions
it gets asked — so it is one of the highest-leverage decisions in a run.

| Archetype | What it means |
|---|---|
| `ecommerce` | Sells products directly, with a cart |
| `saas` | Sells software |
| `service` | Sells services or engagements |
| `unknown` | Could not be determined from evidence |

## Two rules about how it is inferred

**Only positive evidence counts.** The archetype is inferred from markers actually
found in the crawl — never from the absence of something.

**The caller's `category` is never used.** At the MCP boundary, `category` is
caller-supplied and therefore attacker-controllable. A brand that could nominate its own
archetype could nominate the one with the checks it happens to pass, which would make
the score self-graded.

## Inference rules, first match wins

1. `SoftwareApplication` / `WebApplication` JSON-LD → **saas**
2. `Product` / `ProductGroup` JSON-LD → **ecommerce**
3. Any **strong** commerce marker → **ecommerce**
4. `Organization` and (`Service` or `FAQ`), with **zero** commerce markers → **service**
5. `Organization` and (`Service` or `FAQ`), but weak commerce markers present → **unknown**
6. Weak markers only, no service markup → **ecommerce**
7. Otherwise → **unknown**

## Strong vs weak commerce markers

**Strong** — a commerce platform fingerprint, cart markup, or a genuinely transactional
URL (`/cart`, `/checkout`, `/basket`).

**Weak** — a catalog-shaped URL (`/products`, `/collections`, `/shop`, `/dp`).

The distinction matters because a services firm frequently has a `/products` page
describing its offerings without selling anything. Treating that as a storefront would
hand it the ecommerce check set and penalize it for missing product schema on things it
does not sell.

Platform fingerprints match loaded infrastructure — Shopify, WooCommerce, Magento,
BigCommerce, Squarespace Commerce — not brand-name substrings in page text.

## Why `unknown` is scored as ecommerce

`unknown` maps to the ecommerce check set. That is the pre-archetype default, so a site
that cannot be classified is measured exactly as every site was measured before
archetypes existed. It keeps historical scores meaningful rather than introducing a
fourth, lenient scoring path that a site could fall into by being illegible.

## Stability caveat

An archetype flip between `ecommerce` and `service` swaps all four signal checks and can
move the total by up to **40 points**. Archetype stability across runs has not been
measured over a large sample — see [Measurement reliability](../audit/reliability.md).
