Los códigos postales de Puerto Rico comienzan con 006, 007 u 009. Muchos municipios tienen más de un ZIP — las ciudades grandes como San Juan, Bayamón, Carolina y Ponce pueden tener más de cinco.
Esta guía lista los códigos postales de los 78 municipios de Puerto Rico, con el código principal y todos los adicionales conocidos. Al final encontrarás los formatos listos para copiar.
Tabla completa — 78 municipios
| Municipio | ZIP principal | ZIPs adicionales | Región |
|---|---|---|---|
| Adjuntas | 00601 | — | Centro-Oeste |
| Aguada | 00602 | — | Oeste |
| Aguadilla | 00603 | 00604, 00605 | Noroeste |
| Aguas Buenas | 00703 | — | Centro-Este |
| Aibonito | 00705 | — | Centro |
| Añasco | 00610 | — | Oeste |
| Arecibo | 00612 | 00613, 00614 | Norte |
| Arroyo | 00714 | — | Sur |
| Barceloneta | 00617 | — | Norte |
| Barranquitas | 00794 | — | Centro |
| Bayamón | 00956 | 00957, 00958, 00959, 00960, 00961 | Metro |
| Cabo Rojo | 00622 | 00623 | Suroeste |
| Caguas | 00725 | 00726, 00727 | Centro-Este |
| Camuy | 00627 | — | Norte |
| Canóvanas | 00729 | — | Este |
| Carolina | 00982 | 00983, 00984, 00985, 00986, 00987 | Metro-Este |
| Cataño | 00962 | 00963 | Metro |
| Cayey | 00736 | 00737 | Centro |
| Ceiba | 00735 | — | Este |
| Ciales | 00638 | — | Centro-Norte |
| Cidra | 00739 | — | Centro |
| Coamo | 00769 | — | Sur-Centro |
| Comerío | 00782 | — | Centro |
| Corozal | 00783 | — | Centro-Norte |
| Culebra | 00775 | — | Isla-Municipio |
| Dorado | 00646 | — | Norte |
| Fajardo | 00738 | — | Este |
| Florida | 00650 | — | Norte |
| Guánica | 00647 | 00653 | Sur |
| Guayama | 00784 | 00785 | Sur |
| Guayanilla | 00656 | — | Sur |
| Guaynabo | 00965 | 00966, 00968, 00969, 00970 | Metro |
| Gurabo | 00778 | — | Este |
| Hatillo | 00659 | — | Norte |
| Hormigueros | 00660 | — | Oeste |
| Humacao | 00791 | 00792 | Este |
| Isabela | 00662 | — | Noroeste |
| Jayuya | 00664 | — | Centro |
| Juana Díaz | 00795 | — | Sur |
| Juncos | 00777 | — | Este |
| Lajas | 00667 | — | Sur |
| Lares | 00669 | — | Centro-Oeste |
| Las Marías | 00670 | — | Oeste |
| Las Piedras | 00771 | — | Este |
| Loíza | 00772 | — | Este |
| Luquillo | 00773 | — | Este |
| Manatí | 00674 | — | Norte |
| Maricao | 00606 | — | Oeste |
| Maunabo | 00707 | — | Sureste |
| Mayagüez | 00680 | 00681, 00682 | Oeste |
| Moca | 00676 | — | Noroeste |
| Morovis | 00687 | — | Centro-Norte |
| Naguabo | 00718 | — | Este |
| Naranjito | 00719 | — | Centro |
| Orocovis | 00720 | — | Centro |
| Patillas | 00723 | — | Sureste |
| Peñuelas | 00624 | — | Sur |
| Ponce | 00716 | 00717, 00730, 00731, 00732, 00733, 00734 | Sur |
| Quebradillas | 00678 | — | Noroeste |
| Rincón | 00677 | — | Noroeste |
| Río Grande | 00721 | 00745 | Este |
| Sabana Grande | 00637 | — | Suroeste |
| Salinas | 00751 | — | Sur |
| San Germán | 00683 | — | Suroeste |
| San Juan | 00901 | 00906, 00907, 00909, 00910, 00911, 00912, 00913, 00914, 00915, 00916, 00917, 00918, 00920, 00921, 00922, 00923, 00924, 00925, 00926, 00927, 00929, 00930, 00931 | Metro |
| San Lorenzo | 00754 | — | Este |
| San Sebastián | 00685 | — | Noroeste |
| Santa Isabel | 00757 | — | Sur |
| Toa Alta | 00953 | 00954 | Metro-Norte |
| Toa Baja | 00949 | 00950, 00951, 00952 | Metro-Norte |
| Trujillo Alto | 00976 | 00977 | Metro-Este |
| Utuado | 00641 | — | Centro |
| Vega Alta | 00692 | — | Norte |
| Vega Baja | 00693 | 00694 | Norte |
| Vieques | 00765 | — | Isla-Municipio |
| Villalba | 00766 | — | Sur-Centro |
| Yabucoa | 00767 | — | Sureste |
| Yauco | 00698 | — | Sur |
Copia la lista completa
Texto plano — municipio y ZIP principal
Útil para hojas de cálculo, documentos o referencias rápidas.
Adjuntas — 00601
Aguada — 00602
Aguadilla — 00603
Aguas Buenas — 00703
Aibonito — 00705
Añasco — 00610
Arecibo — 00612
Arroyo — 00714
Barceloneta — 00617
Barranquitas — 00794
Bayamón — 00956
Cabo Rojo — 00622
Caguas — 00725
Camuy — 00627
Canóvanas — 00729
Carolina — 00982
Cataño — 00962
Cayey — 00736
Ceiba — 00735
Ciales — 00638
Cidra — 00739
Coamo — 00769
Comerío — 00782
Corozal — 00783
Culebra — 00775
Dorado — 00646
Fajardo — 00738
Florida — 00650
Guánica — 00647
Guayama — 00784
Guayanilla — 00656
Guaynabo — 00965
Gurabo — 00778
Hatillo — 00659
Hormigueros — 00660
Humacao — 00791
Isabela — 00662
Jayuya — 00664
Juana Díaz — 00795
Juncos — 00777
Lajas — 00667
Lares — 00669
Las Marías — 00670
Las Piedras — 00771
Loíza — 00772
Luquillo — 00773
Manatí — 00674
Maricao — 00606
Maunabo — 00707
Mayagüez — 00680
Moca — 00676
Morovis — 00687
Naguabo — 00718
Naranjito — 00719
Orocovis — 00720
Patillas — 00723
Peñuelas — 00624
Ponce — 00716
Quebradillas — 00678
Rincón — 00677
Río Grande — 00721
Sabana Grande — 00637
Salinas — 00751
San Germán — 00683
San Juan — 00901
San Lorenzo — 00754
San Sebastián — 00685
Santa Isabel — 00757
Toa Alta — 00953
Toa Baja — 00949
Trujillo Alto — 00976
Utuado — 00641
Vega Alta — 00692
Vega Baja — 00693
Vieques — 00765
Villalba — 00766
Yabucoa — 00767
Yauco — 00698Objeto JavaScript — todos los ZIPs por municipio
Incluye el ZIP principal y los adicionales en un array. Ideal para validación de formularios.
const zipsPR = {
“Adjuntas”: [“00601”],
“Aguada”: [“00602”],
“Aguadilla”: [“00603”, “00604”, “00605”],
“Aguas Buenas”: [“00703”],
“Aibonito”: [“00705”],
“Añasco”: [“00610”],
“Arecibo”: [“00612”, “00613”, “00614”],
“Arroyo”: [“00714”],
“Barceloneta”: [“00617”],
“Barranquitas”: [“00794”],
“Bayamón”: [“00956”, “00957”, “00958”, “00959”, “00960”, “00961”],
“Cabo Rojo”: [“00622”, “00623”],
“Caguas”: [“00725”, “00726”, “00727”],
“Camuy”: [“00627”],
“Canóvanas”: [“00729”],
“Carolina”: [“00982”, “00983”, “00984”, “00985”, “00986”, “00987”],
“Cataño”: [“00962”, “00963”],
“Cayey”: [“00736”, “00737”],
“Ceiba”: [“00735”],
“Ciales”: [“00638”],
“Cidra”: [“00739”],
“Coamo”: [“00769”],
“Comerío”: [“00782”],
“Corozal”: [“00783”],
“Culebra”: [“00775”],
“Dorado”: [“00646”],
“Fajardo”: [“00738”],
“Florida”: [“00650”],
“Guánica”: [“00647”, “00653”],
“Guayama”: [“00784”, “00785”],
“Guayanilla”: [“00656”],
“Guaynabo”: [“00965”, “00966”, “00968”, “00969”, “00970”],
“Gurabo”: [“00778”],
“Hatillo”: [“00659”],
“Hormigueros”: [“00660”],
“Humacao”: [“00791”, “00792”],
“Isabela”: [“00662”],
“Jayuya”: [“00664”],
“Juana Díaz”: [“00795”],
“Juncos”: [“00777”],
“Lajas”: [“00667”],
“Lares”: [“00669”],
“Las Marías”: [“00670”],
“Las Piedras”: [“00771”],
“Loíza”: [“00772”],
“Luquillo”: [“00773”],
“Manatí”: [“00674”],
“Maricao”: [“00606”],
“Maunabo”: [“00707”],
“Mayagüez”: [“00680”, “00681”, “00682”],
“Moca”: [“00676”],
“Morovis”: [“00687”],
“Naguabo”: [“00718”],
“Naranjito”: [“00719”],
“Orocovis”: [“00720”],
“Patillas”: [“00723”],
“Peñuelas”: [“00624”],
“Ponce”: [“00716”, “00717”, “00730”, “00731”, “00732”, “00733”, “00734”],
“Quebradillas”: [“00678”],
“Rincón”: [“00677”],
“Río Grande”: [“00721”, “00745”],
“Sabana Grande”: [“00637”],
“Salinas”: [“00751”],
“San Germán”: [“00683”],
“San Juan”: [“00901”, “00906”, “00907”, “00909”, “00910”, “00911”, “00912”,
“00913”, “00914”, “00915”, “00916”, “00917”, “00918”, “00920”,
“00921”, “00922”, “00923”, “00924”, “00925”, “00926”, “00927”,
“00929”, “00930”, “00931”],
“San Lorenzo”: [“00754”],
“San Sebastián”: [“00685”],
“Santa Isabel”: [“00757”],
“Toa Alta”: [“00953”, “00954”],
“Toa Baja”: [“00949”, “00950”, “00951”, “00952”],
“Trujillo Alto”: [“00976”, “00977”],
“Utuado”: [“00641”],
“Vega Alta”: [“00692”],
“Vega Baja”: [“00693”, “00694”],
“Vieques”: [“00765”],
“Villalba”: [“00766”],
“Yabucoa”: [“00767”],
“Yauco”: [“00698”]
};Cómo usar esto en un formulario
Si tienes un campo de código postal y quieres validar que el usuario ingresó un ZIP de Puerto Rico, puedes usar el objeto de arriba para verificar en tiempo real. Ejemplo básico:
// Obtener todos los ZIPs de PR como array plano
const todosLosZips = Object.values(zipsPR).flat();
// Validar si un ZIP pertenece a Puerto Rico
function esZipDePR(zip) {
return todosLosZips.includes(zip);
}
// Encontrar el municipio de un ZIP
function municipioPorZip(zip) {
return Object.entries(zipsPR).find(([, zips]) => zips.includes(zip))?.[0] ?? null;
}
// Ejemplos
esZipDePR("00901"); // true — San Juan
esZipDePR("10001"); // false — Nueva York
municipioPorZip("00956"); // "Bayamón"
municipioPorZip("00716"); // "Ponce"Los códigos postales de Puerto Rico siempre tienen 5 dígitos y comienzan con 006, 007 u 009. Puedes usar ese patrón como validación rápida antes de buscar en el objeto: /^00[679]\d{2}$/.test(zip).