> ## Documentation Index
> Fetch the complete documentation index at: https://docs.erdo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Cross-customer priors

> How Erdo learns aggregate priors from every organization's experiments — what is shared, what never is, and how to opt out.

# Cross-customer priors

Every experiment you decide is a data point about how a kind of change moves a kind of metric. On
its own it benefits only your organization. Pooled across every organization on Erdo, those data
points become something no single company could build alone: a library of "changes of this
structural kind tend to move this metric by about this much." Erdo distills that library nightly and
uses it as a **zero-information starting belief** when planning a new experiment — a prior for which
treatment kinds are worth trying, and roughly how large an effect to expect, before your own traffic
has said anything.

This page is the disclosure of exactly what that library contains, what it can never contain, and
how to remove your organization from it.

## What is shared: aggregate effect sizes over a fixed set of change kinds

The only thing the platform learns is the **aggregate effect of a structural treatment class on a
metric**, pooled across organizations. A treatment class is a coarse, structural label for what kind
of change a variant makes — never what the change says. There are exactly eight, and the set is
fixed:

* `headline_change` — the headline/hook copy changed
* `hero_media_change` — the hero image or video changed
* `cta_change` — the call-to-action changed
* `form_length_change` — the lead form gained or shed fields
* `social_proof_add` — testimonials, logos, ratings, or counts were added
* `layout_reorder` — the same sections in a different order
* `offer_change` — the underlying offer, price, or incentive changed
* `full_page_rebuild` — several dimensions changed at once

When an agent creates an experiment variant, it **declares** which of these classes the variant
belongs to. The distiller reads that declared label and the measured outcome — it never reads your
page's content, copy, or design. Eight classes is deliberate: coarse enough that no aggregate can
be traced back to one organization, specific enough to carry a useful prior.

For each (treatment class, metric) pair, a published prior contains only:

* how many experiments and how many distinct organizations contributed,
* a five-number summary (minimum, quartiles, maximum) of the **relative effect** of the winning
  variant versus its control, and
* the share of those experiments in which the effect was positive.

The test we hold this schema to is simple: every published cell is something we would be comfortable
printing on our marketing site.

## What is never shared

No page content, copy, headline, image, or design. No organization name, slug, or identifier. No
per-experiment result, and no per-organization number of any kind. A published prior is an aggregate
and nothing but an aggregate — there is no field in it that names or reconstructs any single
organization's data.

Two thresholds enforce this by construction: a (treatment class, metric) cell is published **only
when at least five experiments from at least three distinct organizations** have contributed to it.
Below either threshold the cell publishes nothing at all. An aggregate over five experiments from
three organizations cannot be attributed to any one of them.

## How the prior is used

A cross-customer prior is the **outermost** belief in Erdo's experiment decision policy: it is
overridden by your own calibrated [persona-panel](/persona-panel) prediction, and by any real
traffic the moment it arrives. Its weight is capped so that a day or two of your own visitors washes
it out entirely. In practice it does one useful thing — it stops an obviously-oversized experiment
before it launches and nudges the opening traffic split — and then it gets out of the way of your
real data.

## Reading the library

The published library is visible to every organization, verbatim — there is nothing hidden about
it. Read it through any Erdo surface:

* **MCP:** `erdo_list_cross_customer_priors`
* **REST:** `GET /v1/cross-customer-priors`
* **CLI:** `erdo experiment priors`

Each entry is one (treatment class, metric) cell with its counts and five-number effect summary.

## Contributing, and how to opt out

Contribution is **on by default**, because only de-identified aggregates over many organizations are
ever published. If you would rather your organization's experiments not contribute, an organization
admin can turn it off in **Settings** (the `contribute_aggregate_learning` toggle). Opting out takes
effect at the **next nightly run**: your experiments are dropped from the aggregation entirely, and
any published cell that no longer clears the five-experiment / three-organization thresholds without
your data is removed — there is no residue. You keep every benefit of your own experiments and your
own [calibration](/persona-panel); you simply stop contributing to the shared library.
