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

# Benchmark ledger

> Public benchmark claims with category boundaries and non-claims.

<div className="bf-article">
  <p className="bf-lead">
    Every number here names the work category. That is the only honest way to compare speed.
  </p>

  You want the headline numbers, but you also want to know what each number is allowed to mean.

  <div className="bf-flow" aria-label="Benchmark ledger flow">
    <div className="bf-flow-step">
      <span>Number</span>
      <strong>Public value</strong>
      <p>The value and unit from the claim row.</p>
    </div>

    <div className="bf-flow-arrow">+</div>

    <div className="bf-flow-step">
      <span>Category</span>
      <strong>Measured job</strong>
      <p>The work shape that makes the row comparable.</p>
    </div>

    <div className="bf-flow-arrow">+</div>

    <div className="bf-flow-step">
      <span>Non-claim</span>
      <strong>Boundary</strong>
      <p>The work this number must not be used to imply.</p>
    </div>
  </div>

  Before a number is quoted, its row should trace back to the [Claim ledger](/reference/claim-ledger).

  <div className="bf-proof-row">
    <strong>0.68ns</strong>
    <span>Warm local read</span>
    <span>The data is local and warm, so Bitfield can read known local bytes without sending a request to a separate database process.</span>
  </div>

  <div className="bf-proof-row">
    <strong>91.7ns</strong>
    <span>Content address lookup</span>
    <span>Bitfield first resolves the data fingerprint, then reads the bytes.</span>
  </div>

  <div className="bf-proof-row">
    <strong>0.59ns</strong>
    <span>Batched write ceiling</span>
    <span>The optimized write path divided across a full batch. Useful as a ceiling, not the same as every saved-write comparison.</span>
  </div>

  <div className="bf-proof-row">
    <strong>316ns</strong>
    <span>Durable batch write comparison</span>
    <span>A conservative saved-write comparison that includes more of the durable write contract.</span>
  </div>

  ## What these numbers do not say

  * They do not say cold storage is sub-nanosecond.
  * They do not say the internet has zero cost.
  * They do not say every database benchmark measures the same job.
  * They do not say one isolated write and a full batch have the same wall-clock shape.

  For the field-level contract behind each row, read the [claim ledger](/reference/claim-ledger).

  ## Claim envelopes

  Each envelope is the full public shape of the claim. Quote the envelope, not just the number.

  | Claim ID                        |                        Public value | Measured job             | Public mechanism category                               | Safe comparison                                                             | Do not compare with                                                                       | Non-claims                                                                                                           |
  | ------------------------------- | ----------------------------------: | ------------------------ | ------------------------------------------------------- | --------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
  | `h0-warm-local-read`            |         `0.68` nanoseconds per read | `warm-local-read`        | `memory-mapped-local-read`, `content-addressed-storage` | Other warm local reads where the needed bytes are already available locally | Cold disk reads, networked database queries, unrelated benchmark jobs                     | Not a cold disk read; not a disappearing network trip; not proof that every database benchmark measures the same job |
  | `h1-hash-lookup`                |       `91.7` nanoseconds per lookup | `content-address-lookup` | `content-addressed-storage`                             | Other local content identity lookup paths                                   | Exact-position reads with no lookup step, networked app latency                           | Not the same category as the H0 exact read; not networked application latency                                        |
  | `durable-batch-write-8190`      |  `316` nanoseconds per written item | `durable-batch-write`    | `durable-append-path`                                   | Other saved batch writes with a similar durability boundary                 | One isolated network write, vendor rows that include different durability or network work | Not every isolated write wall-clock latency; not the same category as a networked managed database write             |
  | `current-batched-write-ceiling` | `0.59` nanoseconds per written item | `batched-write-ceiling`  | `durable-append-path`                                   | Other optimized full-batch ceiling rows                                     | Every saved write path, every vendor write benchmark                                      | Not every full saved write; not a universal write comparison row                                                     |

  ## How to use a row in copy

  Use this shape:

  > Bitfield measured `<value> <unit>` for `<category>`. That row is about `<mechanism category>`. It does not claim `<main non-claim>`.

  Do not use this shape:

  > Bitfield is `<value>` fast.

  The second version removes the measured job. Once the measured job is gone, the number becomes easier to misuse.

  ## Common failures

  | Failure                                | Why it is wrong                   | Fix                                                   |
  | -------------------------------------- | --------------------------------- | ----------------------------------------------------- |
  | Quoting only the number                | The category disappears           | Quote number plus category                            |
  | Removing non-claims                    | The claim gets overread           | Keep the boundary sentence with the row               |
  | Comparing batch ceiling to every write | Ceiling is not every write        | Use the durable batch row for saved-write comparisons |
  | Adding a number not in the ledger      | The public source of truth splits | Add the claim-ledger row first                        |

  ## Next

  Read [Measurement methodology](/proof/methodology), then [Proof objections](/proof/objection-faq).
</div>
