Sample ABN numbers and test ABNs, checked against the register
ABNs and ACNs for testing forms and software. Each test value passes the official check and had no record on the Australian Business Register when we checked on 25 October 2026. Type any number to check it again, or generate a new one: the box looks it up on the register too.
Or make a new one
Your answer appears here
Can I use this as a test ABN?
- Yes
- Check first
- No
A plain answer first, then the checksum working and whether the register holds the number.
- Checksum
- The ABR's modulus 89 test (ASIC's check digit for an ACN), worked through
- On the register
- Whether the ABR holds a record for it today
- If it's real
- Whose number it is, so you can pick another
Try a test ABN or one that fails the checksum.
Unofficial. Reads the Australian Business Register's public web services. Not affiliated with or endorsed by the ABR, the ATO, ASIC or the Australian Government. How it works.
Updated . Rules checked against abr.business.gov.au, asic.gov.au and ato.gov.au; each source below shows the date it was read.
Sample ABN numbers for testing
Every number below was put through the ABR's checksum (ABN Lookup: Format of the ABN (opens in a new tab)) and looked up on the register through this site on 25 October 2026. Select one to check it again now.
| Use it to test | ABN | Checksum | On the register, 25 October 2026 |
|---|---|---|---|
| A valid ABN nobody holds | 18 123 456 789 | Passes | No record |
| 80 987 654 321 | Passes | No record | |
| 89 111 111 111 | Passes | No record | |
| 80 000 000 001 | Passes | No record | |
| 46 663 397 165 | Passes | No record | |
| 57 220 576 159 | Passes | No record | |
| A company-style ABN (test ACN 987 654 320 with its check digits) | 10 987 654 320 | Passes | No record |
| A real, active ABN | 51 824 753 556 | Passes | Active: ABN Lookup's own example, the Australian Taxation Office |
| A wrong digit | 18 123 456 788 | Fails: leaves 70 | Never looked up |
| 51 824 753 557 | Fails: leaves 19 | Never looked up | |
| A leading 0 | 08 123 456 789 | Fails: an ABN never starts with 0 (ATO: Checking an ABN (opens in a new tab)) | Never looked up |
| Too few digits | 1812345678 | Fails: 10 digits, not 11 | Never looked up |
| A branch number after the ABN | 18 123 456 789 001 | The first 11 digits pass | The ABN part has no record |
The last row tests input with a branch number. The ATO says some entities' branches have an extra 3-digit GST or PAYG registration number (ATO: Checking an ABN (opens in a new tab)); the box here reads the first 11 digits as the ABN.
Sample ACN numbers for testing
Each ACN below was checked against ASIC's check digit rule (ASIC: Message Implementation Guide v1.5, Appendix D: Algorithms (opens in a new tab)) and looked up on the ABN register on 25 October 2026. The test values start with 9: the highest ACN we found linked to an ABN that day began with 700, and none of the numbers we sampled above it had one.
| Use it to test | ACN | Check digit | On the ABN register, 25 October 2026 |
|---|---|---|---|
| A valid ACN with no ABN | 987 654 320 | Passes | No ABN linked |
| 900 000 008 | Passes | No ABN linked | |
| 999 999 996 | Passes | No ABN linked | |
| A real ACN | 004 085 616 | Passes | Linked to an active ABN: ASIC's own worked example (ASIC: Message Implementation Guide v1.5, Appendix D: Algorithms (opens in a new tab)) |
| A wrong check digit | 004 085 617 | Fails: should be 6 | Never looked up |
The ABN register can't tell you about an ACN that has no ABN. Most companies have both (ASIC: Australian Company Number (ACN) (opens in a new tab)), but before you build tests on an ACN, search it on ASIC Connect (opens in a new tab) too.
Why not make up a number?
Because any number that passes the checksum can belong to someone. 99 000 000 000 passes the ABR's check and looks invented, but on 25 October 2026 it was a sole trader's active ABN. The same goes for numbers that sit on some sample-number pages and in some generators: several we looked at belong to real businesses.
A real business's ABN in your test data can end up in demos, screenshots and logs. Use a test value from the tables, or press Generate above: the generator makes a number that passes the official check, then looks it up on the register before you use it.
How the ABN checksum works
The ABR's method (ABN Lookup: Format of the ABN (opens in a new tab)), also worked through with the ABR's own example in the ABN format section:
- Subtract 1 from the first digit.
- Multiply each of the 11 digits by its weight: 10, 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19.
- Add the 11 results.
- Divide by 89. If nothing is left over, the number is a valid ABN.
The test value 18 123 456 789, worked through:
| Digit | 1 | 8 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| After step 1 | 0 | 8 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| Weight | 10 | 1 | 3 | 5 | 7 | 9 | 11 | 13 | 15 | 17 | 19 |
| Product | 0 | 8 | 3 | 10 | 21 | 36 | 55 | 78 | 105 | 136 | 171 |
How to make the two check digits
An ABN is a 9-digit identifier with two leading check digits (ABN Lookup: Format of the ABN (opens in a new tab)), so you can make a valid one from any 9 digits:
- Multiply the 9 digits by the last 9 weights, 3, 5, 7, 9, 11, 13, 15, 17 and 19, and add them. Call the total R.
- The two check digits, read as a number P, add P − 10 to the checksum: step 1 takes 1 off the first digit, and that digit's weight is 10.
- So P = 10 + ((89 − R mod 89) mod 89). It always falls between 10 and 98.
For 123 456 789, R is 615 and 615 mod 89 is 81, so P = 10 + 8 = 18, giving 18 123 456 789. When R divides by 89 exactly, 99 works as well as 10: that is why both 10 000 000 000 and 99 000 000 000 pass.
The same works for a company: run its 9-digit ACN through it and you get the ABN that company would have if its ABN is its ACN with 2 digits in front (ASIC: Australian Company Number (ACN) (opens in a new tab)). ACN 004 085 616 gives 53 004 085 616, the same ABN ASIC's own guide checks (ASIC: Message Implementation Guide v1.5, Appendix D: Algorithms (opens in a new tab)).
How the ACN check digit works
ASIC's method (ASIC: Message Implementation Guide v1.5, Appendix D: Algorithms (opens in a new tab)):
- Multiply the first 8 digits by 8, 7, 6, 5, 4, 3, 2 and 1.
- Add the results and divide by 10.
- Subtract the remainder from 10. If that gives 10, use 0. The answer must equal the last digit.
The test value 987 654 320 shows the 10-becomes-0 case:
| Digit | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 0 |
|---|---|---|---|---|---|---|---|---|---|
| Weight | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | check |
| Product | 72 | 56 | 42 | 30 | 20 | 12 | 6 | 2 |
ASIC builds ARBNs with the same formula (ASIC: Message Implementation Guide v1.5, Appendix D: Algorithms (opens in a new tab)).
Check and make test numbers in code
The JavaScript and Python below follow the ABR's and ASIC's rules above. We ran both against every 11-digit ABN and 9-digit ACN on this page.
JavaScript
const ABN_WEIGHTS = [10, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19];
const ACN_WEIGHTS = [8, 7, 6, 5, 4, 3, 2, 1];
function isValidAbn(abn) {
const d = String(abn).replace(/\s/g, "");
if (!/^[1-9]\d{10}$/.test(d)) return false;
const digits = [...d].map(Number);
digits[0] -= 1;
const total = digits.reduce((sum, n, i) => sum + n * ABN_WEIGHTS[i], 0);
return total % 89 === 0;
}
function isValidAcn(acn) {
const d = String(acn).replace(/\s/g, "");
if (!/^\d{9}$/.test(d)) return false;
const total = [...d.slice(0, 8)].reduce((sum, n, i) => sum + Number(n) * ACN_WEIGHTS[i], 0);
return (10 - (total % 10)) % 10 === Number(d[8]);
}
// The full ABN, 2 check digits in front, for any 9-digit identifier such as an ACN.
function abnFromNineDigits(nine) {
const d = String(nine).replace(/\s/g, "");
const rest = [...d].reduce((sum, n, i) => sum + Number(n) * ABN_WEIGHTS[i + 2], 0);
return String(10 + ((89 - (rest % 89)) % 89)) + d;
}Python
ABN_WEIGHTS = [10, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
ACN_WEIGHTS = [8, 7, 6, 5, 4, 3, 2, 1]
def is_valid_abn(abn: str) -> bool:
d = abn.replace(" ", "")
if len(d) != 11 or not d.isdigit() or d[0] == "0":
return False
digits = [int(c) for c in d]
digits[0] -= 1
return sum(n * w for n, w in zip(digits, ABN_WEIGHTS)) % 89 == 0
def is_valid_acn(acn: str) -> bool:
d = acn.replace(" ", "")
if len(d) != 9 or not d.isdigit():
return False
total = sum(int(n) * w for n, w in zip(d[:8], ACN_WEIGHTS))
return (10 - total % 10) % 10 == int(d[8])
def abn_from_nine_digits(nine: str) -> str:
"""The full ABN, 2 check digits in front, for any 9-digit identifier such as an ACN."""
d = nine.replace(" ", "")
rest = sum(int(n) * w for n, w in zip(d, ABN_WEIGHTS[2:]))
return str(10 + (89 - rest % 89) % 89) + dA format check runs offline. To know whether a number is on the register, it has to be looked up: in the box above, or on ABN Lookup.
Questions people ask
What is a sample ABN number?
ABN Lookup explains its checksum with 51 824 753 556 (ABN Lookup: Format of the ABN (opens in a new tab)), and that is a real, active ABN. For test data that shouldn't point at anyone, use one of the test values in the first table: each passes the checksum and had no record on the register on 25 October 2026.
Does a valid checksum mean an ABN is real?
No. In the ABR's words, a number whose weighted total divides by 89 "is a valid ABN" (ABN Lookup: Format of the ABN (opens in a new tab)): it is well formed. Whether anyone holds it, and whether that ABN is active, is on the register. The box above checks both.
Can I put a test ABN on a real invoice?
No. A test value isn't an ABN anyone holds. The ATO says that if the ABN quoted on an invoice is not valid or the details don't match the supplier, the payer must withhold from the payment at the top tax rate (ATO: Checking an ABN (opens in a new tab)). See when you don't withhold for the exceptions.
What does an ABN start with?
Two check digits (ABN Lookup: Format of the ABN (opens in a new tab)). An ABN never starts with 0 (ATO: Checking an ABN (opens in a new tab)), so with the ABR's rule the first two digits run from 10 to 99.
Is an ABN 9 or 11 digits?
11: a 9-digit identifier with two leading check digits (ABN Lookup: Format of the ABN (opens in a new tab)). The 9-digit number ASIC gives a company is its ACN, and a company's ABN is often that ACN with 2 extra digits in front (ASIC: Australian Company Number (ACN) (opens in a new tab)).
How do I make a test ACN?
Start with 9, add 7 more digits, then the check digit ASIC's rule calls for (ASIC: Message Implementation Guide v1.5, Appendix D: Algorithms (opens in a new tab)). The Generate a test ACN button above makes one that way and looks it up on the ABN register. The ABR can't show an ACN with no ABN, so for a final check, search it on ASIC Connect (opens in a new tab).
Sources
Every rule on this page comes from the official pages listed here. Each was read on the date shown, and the Updated date at the top is when this page was last checked against them.
- ABN Lookup: Format of the ABN (opens in a new tab) Read 25 October 2026.
- ATO: Checking an ABN (opens in a new tab) Read 25 October 2026, page updated 11 June 2025, QC51686.
- ASIC: Australian Company Number (ACN) (opens in a new tab) Read 25 October 2026.
- ASIC: Message Implementation Guide v1.5, Appendix D: Algorithms (opens in a new tab) Read 25 October 2026.