How to apply sequential bates numbers to legal discovery documents
- Step 1Lock down the Bates range for this batch — Decide the prefix (matter or party code, e.g.
SMITH-) and the first number of this batch. For a continuing production, the start is one past the last number you produced — if batch 1 ended atSMITH-000500, this batch starts at501. - Step 2Decide the digit width before you stamp anything — The digit count controls zero-padding.
6givesSMITH-000501;7givesSMITH-0000501. Pick a width wide enough for the whole production and never change it mid-production — changing width mid-stream producesSMITH-000999thenSMITH-0001000, which sorts and reads inconsistently. - Step 3Add the discovery PDF — Drop one PDF onto the tool. It processes a single file at a time (it is not a batch merger). If your batch spans several files, stamp them in order, advancing the start number by each file's page count as you go — see the cookbook.
- Step 4Enter prefix, start number, and digits; choose the corner — Type the prefix exactly as it should appear (including any trailing hyphen — there is no automatic separator). Set start number and digit count. Choose
bottom-right, the discovery default, from the position selector (the four options are the page corners). - Step 5Run and confirm the first and last page — Process, then open the output and check page 1 reads your start number and the final page reads start + (pages − 1). That arithmetic is the single most important verification before a production goes out the door.
- Step 6Record the ending number for the next batch — Note the last Bates number this run produced. The next batch's start is that number plus one. Keeping a running production log of prefix + first/last number per batch is how you prove an unbroken sequence later.
The four options this tool exposes
These are the only controls. There is no font, size, colour, opacity, separator, suffix, or skip-page option — the stamp rendering is fixed in code.
| Control | Accepts | Default | What it does to the stamp |
|---|---|---|---|
| Prefix | Free text (any characters) | DOC- | Drawn verbatim before the number. Include your own hyphen/space — nothing is inserted between prefix and number |
| Start number | Integer, minimum 1 | 1 | The number stamped on page 1; each later page is start + page-offset |
| Digits | Integer 1-10 | 6 | Zero-pad width of the number. 6 → 000001. If the number exceeds the width it simply prints more digits (no truncation) |
| Position | top-left, top-right, bottom-left, bottom-right | bottom-right | Which corner the stamp lands in, at a fixed 25 pt margin. No centre or mid-edge positions exist |
Fixed rendering — what you cannot change
These values are hard-coded in the engine. Document them so you know the stamp will look the same on every production.
| Attribute | Fixed value | Implication for discovery |
|---|---|---|
| Font | Courier-Bold (monospaced) | Every digit is the same width, so numbers line up column-perfect down a production |
| Font size | 9 pt | Legible at print scale; not adjustable, so very small or very large page sizes get the same 9 pt mark |
| Colour / opacity | Solid black, fully opaque | Always visible; it does not blend like a watermark. Place it in a clear corner to avoid covering text |
| Margin | 25 pt from the page edge | Roughly a third of an inch in. On a tight-margin scan the stamp may sit close to body text |
| Pages stamped | All pages, no skipping | Cover sheets and blanks are numbered too — standard for an unbroken discovery sequence |
Per-tier limits (PDF family)
Bates numbering is a PDF-family tool, so it inherits the PDF size and page limits. Numbers are from the live tier table.
| Tier | Max file size | Max pages | Files per run |
|---|---|---|---|
| Free | 2 MB | 50 pages | 1 |
| Pro | 50 MB | 500 pages | 5 (batch) |
| Pro + Media | 500 MB | 2,000 pages | 50 |
| Developer | 2 GB | 10,000 pages | unlimited |
| Enterprise | unlimited | unlimited | unlimited |
Cookbook
Real discovery numbering scenarios, with the exact options to set. Party names and matter codes are illustrative.
First production, six-digit padding
A clean opening batch. Prefix is the producing party's code, start at 1, pad to six digits — the most common discovery convention.
Options: prefix: SMITH- startNum: 1 digits: 6 position: bottom-right Input PDF: 312 pages Result on page 1: SMITH-000001 Result on page 312: SMITH-000312 (last number to log for the next batch: SMITH-000312)
Continuing a sequence across a second batch
Batch 1 ended at SMITH-000312. Batch 2 must pick up at 313 so the overall production has no gap.
Previous batch ended: SMITH-000312 Options for batch 2: prefix: SMITH- startNum: 313 digits: 6 position: bottom-right Input PDF (batch 2): 88 pages Result on page 1: SMITH-000313 Result on page 88: SMITH-000400
A multi-file production stamped in order
The tool stamps one file at a time. To keep one sequence across three files, advance the start by each file's page count.
File A (120 pp): startNum 1 -> SMITH-000001 .. SMITH-000120 File B (45 pp): startNum 121 -> SMITH-000121 .. SMITH-000165 File C (200 pp): startNum 166 -> SMITH-000166 .. SMITH-000365 Tip: if you would rather stamp once, merge A+B+C first with /pdf-tools/pdf-merge, then stamp the combined PDF with startNum 1.
Confidential designation built into the prefix
There is no separate confidentiality field. Bake the designation into the prefix so each page carries both the Bates number and the tier.
Options: prefix: SMITH-CONF- startNum: 1 digits: 6 Result: SMITH-CONF-000001, SMITH-CONF-000002, ... Note: the prefix is drawn verbatim, so the whole string increments only on the trailing number. Keep the prefix identical across the batch or your sequence string breaks.
Verifying the range before production
The fastest pre-production check is simple arithmetic on the first and last page, because the engine increments strictly by one per page with no skips.
Claimed range: SMITH-000001 to SMITH-000312
Page count of output PDF: 312
Check: startNum + (pageCount - 1)
= 1 + (312 - 1)
= 312 -> last page should read SMITH-000312 OK
If the last page does not match, you stamped the wrong
start number or the wrong file.Edge cases and what actually happens
Number grows past the digit width (e.g. page 1,000,001 at width 6)
ExpectedZero-padding only pads up to the width; it never truncates. With digits: 6, numbers below a million read 000999, then 001000, but once you cross 999999 the next is simply 1000000 (seven digits, no leading zero). For a production that may exceed your width, pick a wider digit count up front rather than changing it mid-stream.
Free tier and the production set is over 50 pages or 2 MB
BlockedThe PDF family free tier caps at 2 MB and 50 pages per file. A real discovery PDF usually exceeds both. Either split into ≤50-page pieces with /pdf-tools/pdf-split-fixed and stamp each with a continuing start number, or upgrade — Pro lifts the cap to 50 MB / 500 pages.
Prefix typed without a trailing hyphen
By designThere is no automatic separator between prefix and number. If you type SMITH (no hyphen) you get SMITH000001. If you want SMITH-000001, include the hyphen in the prefix field. The stamp is exactly prefix + padded number.
You wanted to skip a cover sheet from numbering
Not supportedEvery page is stamped — there is no skip-pages option. For discovery this is usually correct (the convention is an unbroken sequence including covers and blanks). If you genuinely must leave a page unnumbered, remove it first with /pdf-tools/pdf-delete-pages, stamp, then re-insert — but confirm this is allowed under the production protocol first.
Encrypted / password-protected production file
PreservedThe engine loads with encryption ignored, so an owner-password (permissions-only) PDF will usually stamp. A PDF that requires a user/open password to read may fail to load. Remove the open password first with /pdf-tools/pdf-remove-password, stamp, then re-protect if needed.
The stamp overlaps body text on a tight-margin scan
ExpectedThe margin is a fixed 25 pt and the stamp is opaque black — it does not move to avoid content. On a document scanned edge-to-edge the corner mark can sit on top of text. Try a different corner (the four positions are selectable) to find clear space, since the position is the only placement lever.
Two batches accidentally given the same start number
Sequence collisionNothing stops you from stamping batch 2 with the same start as batch 1, producing duplicate Bates numbers across the production — a genuine discovery problem. The tool has no memory of prior runs; you must track the ending number yourself and start the next batch at that value plus one.
Start number left at 0 or blank
DefaultedThe start-number field has a minimum of 1, and the processor falls back to 1 if it receives a non-positive or empty value. So a blank or 0 start produces prefix000001 on page 1, not prefix000000. Set the start explicitly to avoid surprises.
Re-stamping a PDF that was already Bates-numbered
Double stampRunning the tool again adds a second stamp on top of the existing one — it does not detect or replace prior numbers. If a prior stamp is in the same corner, you get overlapping text. Start from the clean, un-stamped source rather than re-stamping an already-numbered file.
Frequently asked questions
What format do Bates numbers use here?
The stamp is your prefix followed immediately by a zero-padded number, e.g. SMITH-000001. The convention is PREFIX-NNNNNN, but the tool does not enforce the hyphen — you include it in the prefix. Use a 6-digit width for typical productions and a wider width for very large ones.
Can I continue a sequence from a previous production batch?
Yes. Set the start number to one past your previous batch's last number. If batch 1 ended at SMITH-000500, set start to 501. Keep the prefix and digit width identical so the strings line up across batches.
Where on the page does the Bates number appear?
In whichever of the four corners you select — bottom-right is the discovery standard. There are no centre or mid-edge positions, and the margin is a fixed 25 pt from the edge. Confirm placement against your court's local rules.
Does it number every page, including blanks and covers?
Yes — every page is stamped with the next sequential number, including blank pages and cover sheets. This is intentional: discovery productions need an unbroken sequence with no skipped numbers.
Can I choose the font, size, or colour of the stamp?
No. The stamp is fixed at 9 pt Courier-Bold in solid black. Those values are hard-coded for consistency across a production. The only adjustable visual control is which corner the stamp sits in.
How wide should the digit padding be?
Six digits (000001) covers up to 999,999 pages and is the common choice. For collections that may exceed that, use seven or more. Pick the width before you start and keep it constant — changing it mid-production makes numbers sort and read inconsistently.
Is there a suffix or separator option?
No. The stamp is exactly prefix + number with nothing inserted between them and nothing appended after. If you need a suffix in the string, the tool cannot add one; bake any fixed text into the prefix and accept that only the trailing number increments.
Can it stamp several discovery files in one go?
It processes one PDF per run. To keep one continuous sequence across files, stamp them in order and advance the start number by each file's page count — or merge them first with /pdf-tools/pdf-merge and stamp the combined PDF once from 1.
Will my privileged documents be uploaded?
No. Processing runs in your browser on pdf-lib. The PDF bytes are never sent to a server. Only an anonymous counter (that a file was processed, with no content) is recorded for signed-in dashboard stats.
How big a production file can I stamp?
Free tier allows 2 MB / 50 pages per file; Pro 50 MB / 500 pages; Pro+Media 500 MB / 2,000 pages; Developer 2 GB / 10,000 pages; Enterprise unlimited. Split larger sets with /pdf-tools/pdf-split-fixed and stamp each piece with a continuing start number.
What if the file is password-protected?
Permissions-only (owner-password) PDFs usually stamp because the engine ignores encryption on load. A file that needs a password just to open may fail — remove the open password first with /pdf-tools/pdf-remove-password, then stamp.
Is this the same as adding page numbers?
No. Page numbers are a within-document count starting at 1 per file; Bates numbers carry a prefix and continue across an entire production. They can coexist — run Bates numbering here, then add a page-number count with /pdf-tools/pdf-page-numbers in a separate corner.
Privacy first
All PDF processing runs locally in your browser using PDF-lib and pdf.js. No file is ever uploaded — only metadata counters are saved for signed-in dashboard stats.