Preparing your generator page
We are loading content and tools so everything is ready to use.
We are loading content and tools so everything is ready to use.
Build invoice number strings from a prefix, the current year, and a sequence padded with zeros. The page opens on INV, a four-digit year, a dash, and five digits starting at 1. In 2026 the first number is INV-2026-00001, and the default batch of 10 ends at INV-2026-00010. Nothing is listed until you click Generate, and the tool does not remember the last number you issued.
More helpers are in Utility tools.
Last updated: October 8, 2026 · Published: 2026-04-28 · Updated: 2026-10-08
Configure format options and click generate
It joins three optional pieces in a fixed order: prefix, year, sequence. Empty pieces are left out, so you do not get a dangling separator. The year is whatever year the browser reports. The sequence is either a counter from Start from, or a random integer that is then padded.
A second click does not continue the series. It starts again at Start from, or it draws a new random batch. There is no account, no invoice total, and no file. Copy is the strings, one per line.
Allow duplicate numbers matters only after you turn on Randomize sequence values. In the normal counter, each row is one higher than the row before it, so the checkbox does not change the list.
Four steps. The list waits for the button.
The field starts at 10 and usually accepts 1 through 1,000.
Prefix, year, and separator. The default reads INV, the four-digit year, and a dash.
Five digits and start at 1. Leave randomize off for 00001, 00002, 00003, and so on.
The list waits for the button. Copy writes one number per line. Another click starts again at Start from.
What one click produces with the controls at their starting values, and what stays the same when you change them.
| Setting | This generator |
|---|---|
| Output | A number string, not an invoice document |
| Part order | Prefix, then year, then sequence |
| Default | INV, YYYY, dash, 5 digits, start at 1, count 10 |
| 2026 example | INV-2026-00001 through INV-2026-00010 |
| Year source | The browser’s calendar year |
| Maximum count | 1,000, or 100 when a 2-digit random pool must stay unique |
| Memory | None. The next click starts at Start from again |
| Copy | One number per line |
| Random source | Math.random, and only when randomize is on |
| Storage | Browser only |
Changing a control does not rewrite numbers already on screen.
None, INV, BILL, SALE, or Custom. Custom strips spaces and uppercases letters. Blank custom text becomes CUSTOM.
None, YY, or YYYY. The digits come from the browser’s current year. YYYY is selected.
Dash, slash, or nothing between the parts that are present. Dash is selected.
2 to 8. This is the minimum width. A larger sequential value is not cut back to that width.
The first sequential value. It starts at 1. Zero is allowed. Negatives become 0.
Randomize is off. The duplicate checkbox changes the list only after randomize is on.
One change at a time, with the clock in 2026 and the sequence still starting at 1.
| Setup | First number |
|---|---|
| Defaults in 2026 | INV-2026-00001 |
| Year off | INV-00001 |
| Prefix off | 2026-00001 |
| Slash | INV/2026/00001 |
| No separator | INV202600001 |
| Two-digit year | INV-26-00001 |
| Start at 0 | INV-2026-00000 |
| Custom ACME | ACME-2026-00001 |
The digit box sets a minimum width. Random draws with 7 or 8 digits still come from a six-digit range.
| Mode | What you get | Limit |
|---|---|---|
| Sequential | Start from, then +1 each row | Duplicate checkbox is ignored |
| Width | Pad with zeros on the left | 99999 with 5 digits, then 100000 |
| Random, 2–6 digits | 0 through 99…9 for that width | Duplicates blocked unless allowed |
| Random, 7 or 8 digits | Still drawn from 0 through 999999 | Then padded to 7 or 8 digits |
Short definitions for the words on this page.
The label on this page: prefix, year, and sequence joined by the separator you pick. Not the invoice itself.
The letters in front. INV, BILL, and SALE are fixed. Custom is your text, uppercased, with spaces removed.
The counter. Sequential mode adds 1. Random mode picks an integer and pads it.
Zeros added on the left so the sequence meets the digit width. Extra digits are kept, not cut.
The first sequential value. The generator does not remember it between clicks.
The default INV-2026-00001 series, how padding works, and why the duplicate checkbox waits for randomize.
Explore more tools in the directory.