Bulk Phone & Postal Code Cleaner

Paste a messy list — one value per line or a whole CSV column — and get every North American phone number normalized to +1 (XXX) XXX-XXXX, every Canadian postal code checked against the real A1A 1A1 rules, and every US ZIP validated. Each row gets a status and a plain-English reason, and the whole thing exports as CSV.

Pega una lista y haz clic en Limpiar lista

Obtendrás una tabla fila por fila que muestra qué ya era válido, qué se reformateó y por qué exactamente falló algo — además de un CSV que puedes volver a pegar directamente en tu CRM.

Qué cuenta como válido (y por qué)Reglas de dígitos del NANP, las 18 letras de distrito postal canadienses, formatos ZIP

Números de teléfono (NANP)

Un número norteamericano es NPA-NXX-XXXX donde N es 2-9 y X es 0-9. Tanto el código de área como el código de central deben empezar por 2-9, y ninguno puede ser un código N11 (211, 311 … 911) porque esos están reservados para servicios. 370-379 y 960-969 se reservan para expansión futura, y 555-0100 a 555-0199 es el único bloque reservado para números ficticios. Las extensiones (x, ext, poste) se conservan.

Códigos postales canadienses

El formato es A1A 1A1. Ocho letras — D, F, I, O, Q, U, W, Z — no se usan en ninguna posición, sobre todo porque se confunden fácilmente con dígitos. La primera letra es un distrito postal, y solo estas 18 están asignadas:

ATerranova y Labrador
BNueva Escocia
CIsla del Príncipe Eduardo
ENuevo Brunswick
GEste de Quebec
HÁrea metropolitana de Montreal
JOeste de Quebec
KEste de Ontario
LCentro de Ontario
MÁrea metropolitana de Toronto
NSuroeste de Ontario
PNorte de Ontario
RManitoba
SSaskatchewan
TAlberta
VColumbia Británica
XTerritorios del Noroeste y Nunavut
YYukón

Un 0 en la segunda posición marca una ruta rural, lo cual la herramienta indica.

Códigos ZIP de EE. UU.

Cinco dígitos, o nueve para ZIP+4 (normalizado a 12345-6789). Los ceros iniciales se conservan — un fallo común cuando una lista ha pasado por una hoja de cálculo, que convierte 01234 en 1234.

De dónde vienen estas reglas

Esto valida el formato y la estructura, no si un número o dirección está realmente en servicio — eso requiere una verificación en vivo con un operador o con Canada Post. Todo se ejecuta en tu navegador por bloques, para que un pegado de 10 000 filas siga respondiendo y tu lista de contactos nunca se suba a ningún sitio.

Real validation, not just a length check

Most bulk cleaners count digits and stop there. That accepts a lot of junk that will bounce the moment you try to dial it or mail it. This one applies the actual structural rules:

  • The exchange code is checked, not just the area code. In the NANP both the 3-digit area code and the 3-digit exchange code must start with 2-9, and neither can be an N11 code (211, 311 … 911). A number like 416-055-1234 has ten perfectly good digits and is still impossible — this tool says why.
  • Reserved ranges are rejected. Area codes 370-379 and 960-969 are held back for future expansion and aren't in service, and 555-0100 to 555-0199 is the block officially reserved for fictional numbers — so a placeholder that slipped into your CRM gets caught rather than exported.
  • Postal-code letters are checked against the real alphabet. Canada uses only 18 of the 26 letters: D, F, I, O, Q, U, W and Z appear nowhere in a postal code. The first letter also has to be an assigned postal district, so D1A 1A1 is rejected with a reason rather than passing a naive [A-Z]\d[A-Z] pattern.
  • Leading zeros survive. ZIP 01234 stays five digits instead of becoming 1234 — the classic damage a spreadsheet does to an address list on the way in.

Built for big lists

Rows are processed in chunks with the main thread handed back between each one, so a paste of several thousand contacts shows a live progress bar instead of freezing the tab. Nothing is uploaded: the entire list stays in your browser, which matters when the file is your customer database. Duplicates are flagged after normalization, so 416-555-1234 and (416) 555 1234 are correctly caught as the same number.

Preguntas frecuentes

How do I bulk clean phone numbers and postal codes from a CSV for free?

Paste the list into the box above - either one value per line, or paste whole CSV rows and pick which column holds the data. Click Clean list and every row is normalized and validated: phone numbers become +1 (XXX) XXX-XXXX, Canadian postal codes become A1A 1A1, and US ZIPs become 12345 or 12345-6789. You get a per-row table showing valid, fixed or invalid with the reason, then download a CSV report or copy just the cleaned values back into your spreadsheet. It's free, needs no account, and there's no row limit.

Which letters are not used in Canadian postal codes?

Eight of them: D, F, I, O, Q, U, W and Z are not used anywhere in a Canadian postal code, largely because they're easily confused with digits or with each other when handwritten or machine-read. That leaves 18 usable letters. The first letter carries extra meaning - it identifies a postal district, running roughly east to west from A (Newfoundland and Labrador) through V (British Columbia), with X for the Northwest Territories and Nunavut and Y for Yukon. This tool checks both rules, so an unassigned district letter is reported as an error rather than quietly accepted. A zero in the second position means a rural route, which the tool notes for you.

What makes a phone number structurally invalid?

Under the North American Numbering Plan a number is NPA-NXX-XXXX, where the first digit of both the area code and the exchange code must be 2-9. So an exchange starting with 0 or 1 is impossible even though the digit count looks right - that's the check most tools skip. N11 codes (211, 311, 411, 511, 611, 711, 811, 911) are reserved for services and can't be an area code or an exchange. Area codes 370-379 and 960-969 are reserved for future expansion. And 555-0100 through 555-0199 is the range set aside for fictional numbers, so those are flagged as placeholders rather than treated as real contacts.

Can it handle a mixed list of phone numbers, postal codes and ZIPs?

Yes - that's the default. Each row is auto-detected on its own: letters plus three digits reads as a Canadian postal code, five or nine digits as a ZIP, ten or eleven digits as a phone number. If a row is ambiguous the tool tries each type in turn and uses whichever validates. If you know your column is all one type, set the 'Expect' dropdown to that type and anything that doesn't match will be reported as invalid instead of being reinterpreted - useful for catching a ZIP that ended up in your phone column.

Will a list of several thousand rows freeze my browser?

No. The list is processed in chunks of 500 rows with control handed back to the browser between chunks, so the page stays responsive and you get a live progress bar. A few thousand rows finish in well under a second. On screen the table shows the first 1,000 rows to keep rendering fast, but the CSV download always contains every row you pasted.

Does this check whether a number or address really exists?

No, and no free client-side tool can. This validates format and structure - that a number obeys the NANP's digit rules and that a postal code uses a real district letter and the correct letter/digit pattern. Confirming that a phone line is actually in service or that a postal code maps to a deliverable address needs a live carrier lookup or a Canada Post address validation service. What this catches is the large share of list problems that are structural: typos, transpositions, placeholder numbers, spreadsheet-mangled ZIPs and inconsistent formatting.

Herramientas relacionadas