What this tool does
This tool creates random phone numbers that follow the Canadian numbering format. Every number starts with the +1 country code, uses an area code that belongs to a Canadian province or territory, and follows the standard ten-digit pattern used across North America. You can generate a number in one click, copy it, and paste it into whatever you are working on.
The numbers are made for testing, development, design and learning. They are random, so they are not tied to any particular person, business or phone line.
How to use the generator
- Open the generator at the top of this page.
- Choose a province or city, or leave it on any Canadian area code, and optionally pick one specific area code.
- Pick the output format: international, national with brackets, dashes, dots, spaced or E.164.
- Leave Safe test numbers ticked to use the reserved 555-0100 to 555-0199 range, or untick it for realistic-looking digits.
- Choose how many numbers you need (1 to 100) and click generate.
- Copy one number, copy all, or download the list as CSV, JSON or TXT for your test data.
If you need numbers in a particular format, such as +1 416 555 0123, (416) 555-0123 or +14165550123, see our guide to Canadian phone number formats.
How Canadian phone numbers are structured
Canada shares its phone numbering system with the United States and several Caribbean countries. This system is called the North American Numbering Plan, or NANP, and it uses the country code +1.
A full number has 11 digits when written with the country code: the country code 1, a three-digit area code, a three-digit exchange code and a four-digit line number.
For example, in +1 604 555 0142:
- +1 is the country code for the NANP region
- 604 is the area code (Vancouver and surrounding areas, British Columbia)
- 555 is the exchange code
- 0142 is the line number
Area codes identify a geographic region. Canada has dozens of them, from 416 and 647 in Toronto to 604 and 778 in British Columbia, 514 and 438 in Montreal, and 867 which covers all three northern territories. You can browse the full list on our Canadian area codes page.
Who uses a random Canadian phone number generator?
- Software developers and QA testers. Signup forms, checkout pages and CRM systems all need phone numbers to test against. A generator saves time and avoids reusing real people's numbers in test data.
- UI and UX designers. Mockups look more convincing with realistic placeholder data than with "123-456-7890".
- Students and educators. Learning how phone number validation, regular expressions and international formatting work is easier with plenty of sample numbers.
- Data engineers. Populating a staging database or building demo datasets requires volume. Random numbers in the right format make that practical.
- Technical writers and trainers. Documentation and training screenshots should never show real customer data.
Valid format does not mean assigned number
It is worth being clear about what "valid" means here. The generator produces numbers that look correct: the right length, a real Canadian area code and a structure that passes format checks. That does not mean the number is currently assigned to a subscriber. Some generated numbers may belong to real people, and others will not be in service.
Because of that, you should never call or text generated numbers. They are for filling in test fields, not for contacting anyone. To make this safer, the generator uses numbers in the reserved fictional range (555-0100 to 555-0199) by default, so they cannot reach a real person. The reserved range is explained in our guide to fake phone numbers for testing.
Generate numbers by province or city
Each region has its own page with the area codes, the cities they serve and local notes on dialling and formats:
- Random Ontario Phone Number Generator
- Random Toronto Phone Number Generator
- Random British Columbia Phone Number Generator
- Random Quebec Phone Number Generator
- Random Alberta Phone Number Generator
- All Canadian area codes by province
Related guides
- Canada vs US phone numbers: how to tell them apart
- How to validate Canadian phone numbers in JavaScript, Python and PHP
- Canadian phone number formats including E.164
Responsible use
This tool must not be used to harass, spam, scam, impersonate or deceive anyone, to bypass phone verification on a service, or to create fraudulent accounts. Using a random number to get around a platform's identity checks may break that platform's terms and, in some cases, the law. Please read our Terms and Disclaimer.
Frequently asked questions
-
Are the generated numbers real?
By default the generator uses the reserved fictional range 555-0100 to 555-0199 with real Canadian area codes, so the numbers cannot reach a real person. In realistic mode the digits are random and a number might happen to be assigned to someone, which is why you should never call or text them.
-
Can I use these numbers to receive SMS or verification codes?
No. This tool only generates number strings. It cannot receive calls or messages. If you need a number to receive texts for legitimate testing, use a proper virtual number or telecom sandbox service.
-
Is it legal to generate random phone numbers?
Generating a string of digits is not illegal. What matters is how you use it. Using numbers for software testing and design is fine. Using them for fraud, harassment or unsolicited contact is not.
-
Can I generate numbers for a specific province or area code?
Yes. Choose a province or city, and optionally a single area code, before you generate. We also have dedicated pages for Ontario, Toronto, British Columbia, Quebec and Alberta.
-
Does the tool work for the United States too?
Canada and the US share the +1 country code and the same format, but the area codes differ. This generator is built around Canadian area codes. See Canada vs US phone numbers for how to tell them apart.
-
What is the difference between +1 and 1?
+1 is the international way of writing the country code and is what you should store in a database. A plain 1 is the trunk prefix used when dialling long distance within North America. See our format guide.
-
How do I validate a Canadian phone number in code?
Use a library such as libphonenumber for production work, or a regular expression for simple checks. Our validation guide includes examples in JavaScript and Python.
-
Why do many examples use 555 numbers?
Numbers in the range 555-0100 to 555-0199 are set aside for fictional use, so they will not connect to a real person. That makes them safe for films, documentation and demos.
-
Do you store the numbers I generate?
No. Numbers are generated in your browser and are not saved by us.
-
How many numbers can I generate?
You can generate up to 100 numbers per click, and as many batches as you like. Each batch can be copied or downloaded as CSV, JSON or TXT.
-
Who runs this site?
The site is run by an independent developer as a free utility. See our About page and Contact page for details.