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

# Glossary & Key Metrics

> Every publisher term in plain language, plus a one-page cheat-sheet of every threshold, formula, and window AdXensor uses — auction weights, revenue share, reputation bands, the IVT penalty, payout tiers, and fraud-shield windows.

This is the reference you keep open in a second tab. **Part A** defines every term you'll meet across the [How AdXensor Works](/publishers/how-it-works/overview) pages in plain language. **Part B** is the cheat-sheet — every number, band, and formula the platform actually runs, consolidated so you can scan them in one place instead of hunting across pages.

<Info>
  **One source of truth.** Every value below is the value the live system uses. Where a page like [Traffic Quality & Scoring](/publishers/how-it-works/traffic-quality) or [Earnings & Payouts](/publishers/how-it-works/earnings) explains the *why*, this page is the *what* — the exact thresholds, side by side.
</Info>

***

# Part A — Glossary

## Serving & the auction

Terms that decide **which** ad fills your slot. Deep dive: [Ad Receiving Strategy](/publishers/how-it-works/ad-selection).

| Term                        | What it means                                                                                                                                                                                                                                                                                                   |
| --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Eligibility funnel**      | The ordered set of gates a campaign must clear to compete for your slot: country → device → ad size → language → creative-exists → budget remaining → flight window → frequency cap. Country, device, and size are hard AND-filters; the rest are per-campaign checks.                                          |
| **Weighted-random auction** | How the winner is picked among eligible campaigns. Not highest-bid-wins and not pure random — each campaign gets a *weight*, and the winner is drawn with probability proportional to its weight. Favors valuable demand while pacing budget and preventing one advertiser from monopolizing your inventory.    |
| **Flight window**           | A campaign's live dates (`start ≤ now ≤ end`). Outside this window it can't serve. Enforced at serve time as defense-in-depth so a stale campaign can never leak an impression before its start or after its end.                                                                                               |
| **Frequency cap**           | The limit on how many times a single visitor sees the *same* campaign inside a rolling window. Once a visitor hits it, that campaign is filtered out of **their** auctions only. Counted on real rendered impressions — never on bots, never on house ads. Configurable per platform; disabled when set to `0`. |
| **Fill / fill rate**        | Whether an ad request returns an ad, and the share of requests that do. AdXensor targets **\~100% fill** via the fallback chain, so a fill problem is almost always an *eligibility* problem, not a demand problem.                                                                                             |
| **House ad**                | The cross-promo ad served when no paid campaign qualifies, so your slot still earns. It credits a **flat 50% of the house CPM**.                                                                                                                                                                                |
| **Always-fill**             | The last-resort built-in AdXensor banner (an inline SVG, no external assets) that fills a standard-size slot when no paid campaign *and* no admin house creative is available — so the slot is never blank. Standard sizes only: `300x250`, `336x280`, `728x90`, `320x50`, `300x600`.                           |

## Money & metrics

The signals and rates that turn a served ad into revenue. Deep dive: [Earnings & Payouts](/publishers/how-it-works/earnings).

| Term              | What it means                                                                                                                                                                                                                                                                        |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Impression**    | The ad was rendered and its beacon fired. This is the billable event advertisers pay for on CPM campaigns — counted **exactly once** per rendered ad, even if multiple beacons fire.                                                                                                 |
| **View**          | A *viewability* signal — the ad met the IAB standard (≥ 50% on screen for ≥ 1 second), measured client-side by the SDK. **Not billable**; a placement-quality signal only.                                                                                                           |
| **CPM**           | *Cost per mille* — the price for **1,000 impressions**. The default billing model for every campaign goal except traffic. The advertiser is charged `CPM bid ÷ 1,000` per valid impression.                                                                                          |
| **CPC**           | *Cost per click* — the price for one click. Used **only** for traffic-goal campaigns. The advertiser is charged the full `CPC bid` per valid click.                                                                                                                                  |
| **eCPM**          | *Effective CPM* — the blended revenue a slot earns per 1,000 impressions, regardless of underlying model. Internally it's the auction's value signal: `CPM ÷ 1,000` per impression for CPM demand, or `CPC bid × assumed CTR` for CPC demand. Higher eCPM = more valuable inventory. |
| **Revenue share** | Your cut of a paid campaign's gross spend. Platform default **60% to the publisher** (per-account configurable, 0–100%). House-filled slots instead credit a flat **50% of the house CPM**, with the share already baked in.                                                         |

## Quality & reputation

How AdXensor separates real humans from fraud, and grades your inventory. Deep dive: [Traffic Quality & Scoring](/publishers/how-it-works/traffic-quality).

| Term                      | What it means                                                                                                                                                                                                                                                                                                            |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **IVT / invalid traffic** | *Invalid traffic* — events flagged by the fraud shield as bots or automated. Detected by three layered signals: known **bot user-agents**, a **known-bot / data-center IP** blocklist, and **velocity** flood protection. Invalid traffic is recorded for your reports but **never counted, never charged, never paid**. |
| **Invalid rate**          | The share of your impressions the shield filtered as invalid, over 30 days: `invalid ÷ (valid + invalid)`. Drives the reputation penalty and gates your payout tier (which uses your **worst** site's rate).                                                                                                             |
| **Reputation score**      | A **0–100** grade recomputed daily per site from the last 30 days: volume band + a healthy-CTR bonus, minus the invalid-traffic penalty. Higher reputation raises how much your inventory is valued when advertisers plan campaigns, and lifts your payout tier.                                                         |
| **Verified site**         | A site that has served **at least one valid impression** in the last 30 days (`isVerified = true`). Unserved sites sit at reputation `0`, unverified. At least one verified site is required for the Standard and Trusted payout tiers.                                                                                  |

## Wallet & payouts

Where your money lives and how it moves. Deep dive: [Earnings & Payouts](/publishers/how-it-works/earnings).

| Term                  | What it means                                                                                                                                                                                          |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Pending balance**   | Freshly credited earnings. Yours, but not yet withdrawable — serving out the **hold period** for your tier.                                                                                            |
| **Available balance** | Funds past their hold. This is the balance you can request a payout against, subject to the minimum.                                                                                                   |
| **Locked balance**    | The amount moved out of *available* when you request a payout, so it can't be double-spent while an admin reviews. Returned to *available* if the payout is rejected or fails; drained when it's paid. |
| **Hold period**       | The delay before *pending* becomes *available*. Set by your payout tier: **30 days** (New / Standard) or **15 days** (Trusted).                                                                        |
| **Payout tier**       | Your account-wide standing — `new`, `standard`, or `trusted` — computed daily from your sites' reputation and invalid rates. Controls your hold period, minimum payout, and admin-queue priority.      |

***

# Part B — Key Metrics cheat-sheet

Every threshold the platform actually runs, grouped by system. Selection-only heuristics are marked — they influence *which ad wins*, never *what you're paid*.

## Auction & serving

<Info>
  **Auction weight.** Each eligible campaign's win probability is proportional to:

  ```
  weight = max(0, budgetRemaining) × expectedValuePerImpression

  expectedValuePerImpression =
      goal is "traffic"  →  CPC bid × assumed CTR
      otherwise          →  CPM bid ÷ 1,000

  (floored to a tiny positive so a campaign with missing bid data still competes)
  ```
</Info>

| Lever                            | Value                                                   | Notes                                                                                                                                                             |
| -------------------------------- | ------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Assumed CTR** (CPC → eCPM)     | **1%** (0.01)                                           | Selection weighting **only** — never billing. Converts a CPC bid to a comparable per-impression value in the auction.                                             |
| **CPM charge** (advertiser)      | `CPM bid ÷ 1,000` per valid impression                  | Charged once per rendered impression, at beacon time.                                                                                                             |
| **CPC charge** (advertiser)      | `CPC bid` per valid click                               | Traffic-goal campaigns only.                                                                                                                                      |
| **Invalid-URL re-draw**          | Drop winner, re-draw                                    | If a drawn winner's destination isn't a valid `http`/`https` URL it's dropped and the auction re-draws — paid demand is never skipped to house over one bad link. |
| **Fallback (always-fill) sizes** | `300x250` · `336x280` · `728x90` · `320x50` · `300x600` | Standard IAB sizes that get a built-in banner. Any other size with no house creative returns empty.                                                               |

<Note>
  CPM and CPC are charged at **impression / click time**, not serve time — there's no serve-time budget decrement. The auction weight uses *remaining budget* purely for pacing, so a campaign naturally yields as it spends down.
</Note>

## Revenue & earnings

| Model                     | You're paid per   | Gross formula                     |
| ------------------------- | ----------------- | --------------------------------- |
| **Traffic (CPC)**         | Click             | `clicks × CPC bid`                |
| **Everything else (CPM)** | 1,000 impressions | `(impressions ÷ 1,000) × CPM bid` |

| Rate                        | Value                | Notes                                                                                                                              |
| --------------------------- | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| **Publisher revenue share** | **60%** (default)    | Per-account configurable, 0–100%. Applied by client-api to paid-campaign gross.                                                    |
| **House ad share**          | **50% of house CPM** | Publisher net computed as `round((impressions ÷ 1,000) × house CPM × 0.5)`; credited directly (share already baked in).            |
| **Credit cadence**          | Nightly              | Valid, non-bot events aggregated per site + campaign each night.                                                                   |
| **Earnings lookback**       | **3 calendar days**  | Every run re-scans the last 3 days. A missed/failed day self-heals; an already-credited day is a silent no-op (never double-paid). |
| **Settlement currency**     | XOF                  | Paid earnings settle in XOF; mixed-currency wallets can't be paid out in one request.                                              |

<Info>
  **Worked example.** A 500 XOF CPM campaign serves 20,000 valid impressions on your site in a day → gross `= (20,000 ÷ 1,000) × 500 = 10,000 XOF` → your 60% share `= 6,000 XOF` credited.
</Info>

## Reputation ladder

Base score by 30-day **valid** impression volume, with a bonus for keeping CTR in the healthy band.

| 30-day valid impressions |          Healthy CTR (0.5%–6%)         |  Unhealthy CTR |
| ------------------------ | :------------------------------------: | :------------: |
| 0                        |             0 (unverified)             | 0 (unverified) |
| 1 – 999                  |                 10 – 39                |     10 – 39    |
| 1,000 – 9,999            |                 **55**                 |       42       |
| 10,000 – 49,999          |                 **70**                 |       58       |
| 50,000+                  | **82**, or **90** if avg CPM ≥ 300 XOF |       65       |

<Note>
  The **1 – 999** band scales linearly with volume: `10 + round((impressions ÷ 1,000) × 29)`. **Healthy CTR** is `0.5% ≤ CTR ≤ 6%` (`clicks ÷ impressions`). The top **90** score also requires a 30-day average CPM of **≥ 300 XOF**.
</Note>

### Invalid-traffic (IVT) penalty

Applied after the base score, then clamped to ≥ 0.

```
final score = max(0, round(baseScore − invalidRate × 40))
```

| Invalid rate | Penalty       |
| ------------ | ------------- |
| 10%          | −4            |
| 25%          | −10           |
| 50%          | −20           |
| 100%         | −40 (maximum) |

<Info>
  **Invalid rate** `= invalid impressions ÷ (valid + invalid impressions)`, measured over 30 days. A clean site (\< 2% invalid) is barely touched; a dirty site can shed nearly half its score.
</Info>

## Dashboard labels

How raw numbers read in your dashboard.

<Tabs>
  <Tab title="Reputation label">
    | Score   | Label         |
    | ------- | ------------- |
    | ≥ 80    | **Excellent** |
    | 65 – 79 | **Good**      |
    | 45 – 64 | **Average**   |
    | \< 45   | **Low**       |
  </Tab>

  <Tab title="Traffic-quality label">
    | Invalid rate | Label     |
    | ------------ | --------- |
    | ≤ 2%         | **Clean** |
    | ≤ 10%        | **Good**  |
    | ≤ 25%        | **Watch** |
    | > 25%        | **High**  |
  </Tab>
</Tabs>

## Payout tiers

Computed daily from your sites' reputation. Gating uses your **worst** site's invalid rate and requires at least one **verified** site.

| Tier         |     Hold    |           Minimum payout           | Qualification                                                                                                          |
| ------------ | :---------: | :--------------------------------: | ---------------------------------------------------------------------------------------------------------------------- |
| **New**      |   30 days   |    Full platform minimum (×1.0)    | Default for every new account                                                                                          |
| **Standard** |   30 days   |    Full platform minimum (×1.0)    | ≥ 1 verified site · avg reputation ≥ 45 · worst invalid rate ≤ 20%                                                     |
| **Trusted**  | **15 days** | **40%** of platform minimum (×0.4) | ≥ 1 verified site · avg reputation ≥ 65 · worst invalid rate ≤ 10% · (≥ 1 completed payout **or** avg reputation ≥ 80) |

<Tip>
  **Minimum payout** `= round(platform minimum × tier factor)`, where the factor is **1.0** (New / Standard) or **0.4** (Trusted). Trusted also **fast-tracks** your requests to the top of the admin queue.
</Tip>

<Warning>
  Because tiers key on the **worst** invalid rate across *all* your sites, one neglected, dirty property can hold your entire account at a lower tier — keep every site clean.
</Warning>

## Fraud shield, guards & windows

The IVT shield's signals and the key time-windows the platform runs.

| Setting                          | Value                              | What it governs                                                                                                      |
| -------------------------------- | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| **Bot signals**                  | `ua_bot` · `cidr_bot` · `velocity` | Bot user-agent, known-bot / data-center IP, and flood detection — layered, precise-first.                            |
| **Shield modes**                 | `off` · `log` · `block`            | In `log` and `block`, flagged traffic is **never counted or paid**; `block` additionally serves no ad / no redirect. |
| **Velocity flood-guard**         | Rolling per-IP + user-agent window | Catches abnormal request bursts from a single source; tuned so ordinary multi-slot page views never trip it.         |
| **Reputation / audience window** | 30 days                            | Rolling window for reputation scoring and audience stats.                                                            |
| **Stats aggregation**            | Every hour                         | Valid vs. invalid impressions/clicks rolled up per site, country, device.                                            |

### TTLs & dedup windows

| Key / event                                  | TTL               | Purpose                                                                               |
| -------------------------------------------- | ----------------- | ------------------------------------------------------------------------------------- |
| **Serve-token metadata** (`event:<id>`)      | 2 hours (7,200 s) | Links an impression/click beacon back to its campaign + destination.                  |
| **Click / impression dedup**                 | 2 hours (7,200 s) | One-shot guard so a rendered ad counts and charges **once** across every beacon path. |
| **Attribution key** (`attr:<id>`)            | 30 days           | Long-lived so a late conversion still resolves to the right campaign.                 |
| **Conversion dedup (with click / order id)** | 30 days           | Two real conversions behind one NAT both count; exact replays don't.                  |
| **Conversion dedup (no id)**                 | 1 day (86,400 s)  | Coarse per-campaign + IP flood guard fallback.                                        |
| **House config / creative cache**            | 60 s              | In-memory cache of house CPM + creatives.                                             |
| **Stale draft purge**                        | 7 days            | Unsubmitted draft sites are cleaned up.                                               |

<Note>
  Advertiser-reported **conversion revenue** is analytics-only — it never affects budget, billing, or your earnings — and is clamped to a 1e9 XOF ceiling so a forged value can't distort reporting.
</Note>

## Wallet lifecycle at a glance

```mermaid theme={null}
flowchart LR
    E[Valid events] -->|nightly credit| P[Pending]
    P -->|hold elapses<br/>30 or 15 days| A[Available]
    A -->|request payout ≥ minimum| L[Locked]
    L -->|admin: approved → processing → paid| PAID[Paid 🎉]
    L -.->|rejected / failed| A
```

***

## Keep reading

<CardGroup cols={2}>
  <Card title="How AdXensor Works" icon="compass" href="/publishers/how-it-works/overview">
    The full lifecycle of one impression, request to wallet.
  </Card>

  <Card title="Ad Receiving Strategy" icon="gavel" href="/publishers/how-it-works/ad-selection">
    The eligibility funnel and the weighted-random auction in depth.
  </Card>

  <Card title="Traffic Quality & Scoring" icon="shield-check" href="/publishers/how-it-works/traffic-quality">
    The IVT shield and the 0–100 reputation score.
  </Card>

  <Card title="Earnings & Payouts" icon="wallet" href="/publishers/how-it-works/earnings">
    Revenue formulas, the 60% share, and the wallet lifecycle.
  </Card>

  <Card title="Optimization Playbook" icon="rocket" href="/publishers/how-it-works/optimization">
    Turn every number above into a concrete checklist to earn more.
  </Card>
</CardGroup>
