How to apply custom-prefix bates numbering to a pdf
- Step 1Design the prefix to match your convention — Decide the full prefix string: matter code, client code, date, or a combination — e.g.
ABC2025-orXYZ-INV-. Whatever you type is drawn verbatim, including any hyphen that separates it from the number. - Step 2Add the PDF — Drop one PDF onto the tool. It processes a single file per run; for a multi-file scheme, stamp each file in turn with a continuing start number.
- Step 3Enter the custom prefix and start number — Type the prefix exactly as designed. Set the starting number —
1for a fresh set, or the continuing value to extend an existing scheme. - Step 4Set the zero-padding width — Choose digits (1-10). Six (
000001) suits most collections; use seven or more for very large sets. Keep the width constant across the whole scheme so codes sort and read consistently. - Step 5Choose a corner and keep it consistent — Pick one of the four corners (bottom-right is typical). Use the same corner across every file in the collection so the codes always appear in the same place when documents are reviewed side by side.
- Step 6Run and verify the rendered code — Process and open the output. Check that page 1 reads exactly
prefix+ your start number, that a long prefix is not clipped at the edge, and that the last page reads start + (pages − 1).
Prefix-design examples
The prefix is drawn verbatim and concatenated directly with the padded number. These are valid prefixes and the codes they produce (start 1, 6 digits).
| Convention | Prefix to type | Resulting code on page 1 | Note |
|---|---|---|---|
| Matter code | SMITH- | SMITH-000001 | Include the hyphen yourself |
| Client + year | ABC2025- | ABC2025-000001 | Letters and digits both allowed in the prefix |
| Department + doc type | XYZ-INV- | XYZ-INV-000001 | Multiple hyphens are fine — it's just text |
| Date-encoded | 20250407- | 20250407-000001 | A date in the prefix is a fixed string, not a live date |
| No separator | ABC | ABC000001 | Omit the hyphen and the code runs together |
What the prefix can and cannot do
The prefix is a constant string concatenated with the incrementing number. These boundaries come straight from how the stamp is built.
| Want | Supported? | How / why |
|---|---|---|
| Any text in the prefix | Yes | Drawn verbatim before the number |
| Hyphen/space between prefix and number | Yes (you add it) | No separator is auto-inserted; put it in the prefix |
| A suffix after the number | No | The stamp ends at the number; nothing is appended |
| A second counter inside the prefix | No | Only the trailing number increments; the prefix is constant |
| A live/auto date in the prefix | No | A date string is fixed text typed by you, not generated per run |
Fixed render and tier limits
Render attributes are hard-coded; file/page caps come from the PDF-family tier table.
| Item | Value | Item | Value |
|---|---|---|---|
| Font / size | Courier-Bold, 9 pt | Free | 2 MB / 50 pages |
| Colour | Solid black, opaque | Pro | 50 MB / 500 pages |
| Margin | 25 pt from edge | Pro + Media | 500 MB / 2,000 pages |
| Positions | 4 corners only | Developer | 2 GB / 10,000 pages |
| Pages stamped | All pages | Enterprise | unlimited |
Cookbook
Custom-prefix recipes for document-control and corporate numbering. Codes are illustrative.
Matter-code prefix from one
A standard custom prefix: the matter code with a trailing hyphen, six-digit padding, starting at 1.
Options: prefix: SMITH- startNum: 1 digits: 6 position: bottom-right Page 1: SMITH-000001 Page 2: SMITH-000002 ...
Client + year prefix
Letters and digits in the prefix let you encode the client code and year together in one fixed string.
Options: prefix: ABC2025- startNum: 1 digits: 6 Page 1: ABC2025-000001 Page 2: ABC2025-000002 The whole 'ABC2025-' stays fixed; only the number after it counts up.
Date-encoded prefix for daily batches
Put the batch date in the prefix. It is plain text you type — it does not auto-update, so each day's batch uses that day's prefix.
Monday batch: prefix 20250407- -> 20250407-000001 ... Tuesday batch: prefix 20250408- -> 20250408-000001 ... Each batch restarts the number at 1 under its own date prefix (a per-day series).
Continuing one scheme across multiple files
To keep one running number under a single prefix across several files, advance the start by each file's page count.
Prefix: XYZ-INV- digits: 7 File 1 (300 pp): start 1 -> XYZ-INV-0000001 .. 0000300 File 2 (150 pp): start 301 -> XYZ-INV-0000301 .. 0000450 For a single pass instead, merge first with /pdf-tools/pdf-merge and stamp from 1.
Wide padding for a large corporate collection
A collection that may exceed a million pages needs 7 digits so the fixed width never breaks mid-collection.
Options: prefix: CORP- startNum: 1 digits: 7 Page 1: CORP-0000001 Page 1,000,000: CORP-1000000 (With digits:6 the millionth page would print CORP-1000000 too, but earlier numbers would have been 6 wide -> use 7 to keep one fixed width.)
Edge cases and what actually happens
Very long prefix runs into the page edge
ClippedA long prefix in a top/bottom-right corner is positioned so its right edge sits at the 25 pt margin, but a very long string in a left corner, or an extreme prefix length, can run toward or off the opposite edge. Keep prefixes short (10 characters or fewer is comfortable) and check the rendered first page; the size is fixed, so a long string cannot be shrunk to fit.
Expecting the prefix to include a moving sub-counter
Not supportedOnly the trailing number increments. You cannot have two counters (e.g. a per-section number inside the prefix plus the page number). The prefix is a constant string for the whole run. Stamp sections separately with different prefixes if you need section-level codes.
Wanting an auto-generated date in the prefix
Not supportedThe prefix is exactly the text you type — there is no token that expands to today's date. A date in the prefix is fixed text; type the correct date string for each batch yourself.
Number exceeds the chosen digit width
ExpectedPadding never truncates. With digits: 6, the number after 999999 prints as 1000000 (seven digits), so the fixed width breaks at that point. For collections that may pass the width, choose a larger digit count up front.
Prefix typed without a separator
By designThere is no automatic hyphen or space. ABC produces ABC000001. Add the separator into the prefix (ABC-) if you want it. The stamp is exactly prefix + padded number.
File over the free-tier page or size cap
BlockedFree tier allows 2 MB / 50 pages. A document-control collection usually exceeds this. Upgrade (Pro = 50 MB / 500 pages) or split with /pdf-tools/pdf-split-fixed and stamp each part with a continuing start number.
Encrypted document-control file
PreservedPermissions-only encryption stamps (encryption is ignored on load). A file needing a password to open won't load — strip it with /pdf-tools/pdf-remove-password first, then stamp.
Re-stamping a file that already carries a prefix code
Double stampThe tool adds a new mark over any existing one; it does not detect or replace a prior prefix/number. Stamp from the clean source so you don't get two overlapping codes in the same corner.
Frequently asked questions
Is there a character limit for the prefix?
The field accepts any text you type. There is no hard cap enforced, but practically a long prefix in a fixed 9 pt font at a fixed margin can crowd or run off the page edge — keep it to about 10 characters for clear, in-margin rendering, and check the first page.
Can I include a date in the prefix?
Yes, as plain text. A prefix like 20250407- is valid and useful for date-based tracking. It does not auto-update to the current date — it is exactly the string you type, so set the right date for each batch.
What zero-padding should I use?
Six digits (000001) suits most collections and covers up to 999,999 pages. For very large sets (100,000+ pages, or anything that might pass a million), use seven or more so the fixed width never breaks mid-collection.
Is there a separator inserted between the prefix and the number?
No. The stamp is the prefix immediately followed by the padded number. To get ABC2025-000001, type ABC2025- (with the hyphen). Without it you'd get ABC2025000001.
Can the prefix change from page to page?
No. The prefix is a single constant string for the whole run; only the trailing number increments. To use a different prefix on different sections, split the file with /pdf-tools/pdf-split-range and stamp each section separately.
Can I add a suffix after the number?
No. The stamp ends at the number — nothing is appended after it. If your scheme needs trailing text, this tool can't add it; the only customisable text is the prefix that precedes the number.
Can I change the font, size, or colour to match our brand?
No. The stamp is fixed at 9 pt Courier-Bold in solid black. Those values aren't adjustable. The only visual choice is which of the four corners the code appears in.
How do I keep one numbering scheme running across many files?
Use the same prefix and digit width on every file and advance the start number by each file's page count. Or merge the files first with /pdf-tools/pdf-merge and stamp the combined PDF once from 1.
Will my document-control files be uploaded?
No. Stamping runs in your browser on pdf-lib; the file's bytes never leave your device. Only an anonymous processed-a-file counter is recorded for dashboard stats, with no content.
Does the prefix support special characters?
It is drawn verbatim with the standard font, so common ASCII characters (letters, digits, hyphen, underscore, period, slash) render fine. Unusual symbols or non-Latin scripts may not be in the font's glyph set; test with a one-page sample first.
How large a file can I stamp with a custom prefix?
Free: 2 MB / 50 pages. Pro: 50 MB / 500 pages. Pro+Media: 500 MB / 2,000 pages. Developer: 2 GB / 10,000 pages. Enterprise: unlimited. Split larger collections with /pdf-tools/pdf-split-fixed.
Can I scrub identifying metadata after stamping?
Yes, as a separate step. The stamp itself only draws text on the page. To clean document properties (author, creation tool) after stamping, run /pdf-tools/pdf-metadata-scrubber on the output.
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.