---
title: "Builder audience overlap"
method: GET
path: "/api/public/v1/builders/{builder}/overlap"
tags: ["Builder Analytics"]
---

# Builder audience overlap

`GET /api/public/v1/builders/{builder}/overlap`

The top 10 other builders this builder's active users also traded via in the period, ranked by shared users. Each row carries the overlap's share of this builder's active users and the builder fees those shared users paid to the OTHER builder in the period. feesUsd is null (unknown, never zero) when the fee probe exceeds its budget — the shared-user counts always serve; see the response's dataNotes.

## Path parameters

- `builder` string, required — Builder address (0x-hex)

## Query parameters

- `period` 'day' | 'week' | 'month'

## Response `200`

OK

- BuilderOverlapBody
  - `$schema` string, uri — A URL to the JSON Schema for this object.
  - `activeUsers` integer, required — Distinct wallets with attributed fills via this builder in the period (share denominator)
  - `builder` string, required
  - `builderName` string — Known display name for the builder; omitted if unknown
  - `dataNotes` string, required
  - `overlaps` BuilderOverlapRow[], nullable, required — Top 10 other builders by shared users
    - `builder` string, required — The other builder's address
    - `builderName` string — Known display name for the other builder; omitted if unknown
    - `feesUsd` number, double, nullable, required — Builder fees those shared users paid to the OTHER builder in the period; null when the fee probe exceeded its budget (see dataNotes) — null means unknown, never zero
    - `share` number, double, required — sharedUsers / activeUsers
    - `sharedUsers` integer, required — This builder's active users who also had attributed fills via the other builder in the period
  - `period` string, required
  - `verified` BuilderStamp
    - `coverage` BuilderCoverage, required
      - `attributed_fees_usd` number, double, required — Join-attributed fees in the rollup window
      - `computed_at` string, required — When the rollup was computed (RFC3339)
      - `ledger_fees_usd` number, double, required — Exact ledger revenue in the rollup window
      - `ratio` number, double, required — attributed_fees / ledger_fees — the share of revenue the fill-level metrics account for
      - `window_end` string, required — End of that window (RFC3339)
      - `window_start` string, required — Start of the window the coverage rollup was computed over (RFC3339)
    - `ledger_block` integer, required — Latest block in HL's builder-fee ledger this data was verified against
    - `ledger_chain_time` string, required — Chain timestamp of that ledger entry (RFC3339)

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `422` — Unprocessable Entity
- `429` — Too Many Requests
- `500` — Internal Server Error
- `504` — Gateway Timeout

---

[API](https://skmtc.dev/coinversa/apis/coinversa-api.md) · [All operations](https://skmtc.dev/coinversa/apis/coinversa-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/coinversa/coinversa-api/revisions/77c03c427063/schema)
