Invoice Number GeneratorPrefix + date + sequence

Build numbers for invoices, quotes, purchase orders, contracts, and internal IDs. Preview one, generate a batch, and check for duplicates.

Your input is never sent anywhere.

Details

Document type

Preview (first number)

INV-202601-0001

Highest sequence at 4 digits

9,999

Last number in batch

INV-202601-0010

Batch list (10 numbers)

INV-202601-0001
INV-202601-0002
INV-202601-0003
INV-202601-0004
INV-202601-0005
INV-202601-0006
INV-202601-0007
INV-202601-0008
INV-202601-0009
INV-202601-0010

Duplicate check: paste existing numbers

Number format

Prefix

Date

The same date is used for every number in the batch.

Sequence digits

4

Increment by

1

Starting number

Separator

Suffix (optional)

TIP

With a date in the number, you can restart the sequence each period without repeating a number. Leave extra digits for growth.

Your settings and numbers stay in this browser tab. Nothing is sent to a server or saved.

How invoice numbers are put together

Most business document numbers combine three parts: a prefix, a date, and a sequence number. Take INV-202611-0001. "INV" marks it as an invoice, "202611" is the year and month, and "0001" is the first document in that period.

Typing numbers by hand tends to cause repeated numbers, gaps, and formats that differ from person to person. This tool lets you set the prefix, date format, digit count, starting number, and separator once, then shows the result as you change each setting.

Beyond a single preview, you can generate a batch of up to 500 numbers and paste in your existing numbers to flag any that already exist.

Where this fits in your billing workflow

Starting a new billing period

Enter the next number as your starting point and generate the full list for the month, so each invoice has a number ready before you send it.

Setting up a numbering scheme from scratch

Try different prefixes, date formats, and digit counts while watching the preview. It is a quick way to settle on a format before you put it in your accounting software or a spreadsheet.

Matching numbers across document types

Switch the prefix between INV, EST, PO, and CTR to keep quotes, invoices, purchase orders, and contracts in one consistent style.

Checking a new batch against your records

Paste the numbers from your ledger or spreadsheet and see right away whether any number in the new batch is already taken.

How to create a numbering scheme in 4 steps

  1. Pick a preset (invoice, quote, purchase order, contract, or internal ID) to load a starting setup.
  2. Adjust the prefix, date format, digit count, starting number, and separator until the preview matches what you want.
  3. Set the batch size to generate a list of numbers in order.
  4. Paste your existing numbers into the duplicate check, then copy the list or download it as a .txt file.

Note: Everything is calculated in your browser. No numbers or settings are sent anywhere.

Before you start using these numbers

  • This tool builds numbers. It does not check tax or accounting rules. Confirm any numbering requirements with an accountant or your tax authority.
  • The date you pick is applied to every number in the batch. Generate a separate batch if numbers need different dates.
  • Settings and lists are not saved. Reloading the page resets them, so record your last issued number elsewhere.
  • If the sequence outgrows the digit count, the number gets longer instead of being cut off. The advice box warns you when that happens.

Sample formats by document type

Example prefixes and digit counts you can use as a starting point.

DocumentExampleDigitsWhy this works
InvoiceINV-202611-00014The year and month make each period easy to find
Quote / estimateEST-202611-00124Same style as invoices, so a quote can carry over to its invoice
Purchase orderPO-20261102-0033A full date suits a few orders per day
ContractCTR-2026-00074Year only, since contracts are issued less often
Internal IDREF-000425No date, one running count

These are examples only. If a client or your company has its own rules, follow those.

Choosing a prefix, date, and digit count

A few decisions shape how well a numbering scheme holds up over time.

Use a prefix that identifies the document

Two or three letters like INV, EST, PO, or CTR make the document type clear at a glance.
A consistent prefix also makes searching and sorting in a spreadsheet or folder much easier.

Let the reset period decide the date format

If the sequence restarts every month or year, put that period in the number (YYYYMM or YYYY) so numbers from different periods never match.
If you keep one running count, skip the date and use more digits.

Leave room in the digit count

Choose a length that covers growth in your volume, not just today's.
The tool shows the highest number your digit count can hold, so you can see how much room is left.

Check before you issue, not after

Run the duplicate check against your existing list before you send anything.
If several people issue numbers, agree on who owns the next starting number.

Numbering mistakes that cause billing headaches

Numbers are typed by hand with no set format

Different people use different patterns, and the same number ends up on two documents or a number gets skipped.

💡 See the solution▼
Decide the format once, build it here, and share the sample with everyone who issues documents.

The sequence runs out of digits

A 3-digit sequence stops at 999. The next number becomes 4 digits long, which can break sorting and make the format inconsistent.

💡 See the solution▼
Add digits when you set up the scheme, or include the year or month so the sequence restarts on a schedule.

Every client gets a different format

Changing the whole pattern to suit each client makes it hard to tell which number belongs to which document.

💡 See the solution▼
Keep one standard format. If a client needs something different, change only the prefix or the separator.

A new batch starts at a number already in use

You meant to continue from last time but entered the wrong starting number, so the batch overlaps with numbers you already sent.

💡 See the solution▼
Paste your existing numbers into the duplicate check before you issue the batch, and keep a note of the last number used.

The last issued number is not recorded

Without a record, the next person has to guess where to start.

💡 See the solution▼
Download the list as a .txt file and note the last number and date in your ledger or spreadsheet.

Invoice numbering FAQ

Q.Is there a required format for invoice numbers?

Q.

A. It depends on your country and tax authority. Many places set no required format, while some require each invoice number to be unique and in sequence. This tool only helps you build and list numbers. It does not check tax or legal rules, so confirm your requirements with an accountant or your tax authority.

Q.What does a good invoice number look like?

Q.

A. A common pattern is a short prefix, a date, and a sequence number, such as INV-202611-0001. The prefix tells you the document type, the date groups numbers by period, and the sequence keeps each number unique. Pick the pattern first, then keep it the same on every document.

Q.Should invoice numbers include the year or month?

Q.

A. Include it if you want the sequence to restart each year or month. Because the date is part of the number, INV-2026-0001 and INV-2027-0001 never collide. If you prefer one running count, leave the date out and use more digits.

Q.How many digits should the sequence have?

Q.

A. Base it on how many documents you issue in the period the sequence covers. If you restart each month and send fewer than 100, 3 digits is enough (up to 999). For a running count with no date, 5 digits holds up to 99,999. The tool allows 2 to 8 digits and shows the highest number your current length can hold.

Q.How do I generate a batch of numbers?

Q.

A. Set your starting number and the batch size, up to 500, and the list updates right away. Use the increment setting to skip numbers, for example by 10. Copy the whole list or download it as a .txt file with one number per line.

Q.How does the duplicate check work?

Q.

A. Paste your existing numbers, separated by line breaks, commas, semicolons, or spaces. The tool compares them to the numbers in the batch list and marks any that match exactly. The comparison is case-sensitive, and it only checks the batch list, not the preview. Numbers that contain spaces are split at the space, so avoid spaces in your format.

Q.Does the tool save my settings or send my data anywhere?

Q.

A. No. Everything runs in your browser and nothing is sent to a server. Settings are not saved either, so reloading the page resets them. After you issue a batch, note the last number somewhere so you know where to start next time.

User Feedback & Request

Your feedback
makes this tool better.

Tell us which features you'd like, what should be fixed, or which new tool you'd like to see. An engineer reads every submission and uses it to guide development.

Send feedback