Understanding the Philippine Standard Geographic Code (PSGC)
The Philippine Standard Geographic Code (PSGC) is the systematic, authoritative classification scheme maintained by the Philippine Statistics Authority (PSA) to uniquely designate all administrative divisions across the country. Whether processing national census surveys, election tallies from COMELEC, municipal budget allocations from the Department of Budget and Management (DBM), or geospatial shapefiles from NAMRIA, the PSGC is the undisputed primary key linking civic data to geographic space.
1. Structure of the 9-Digit and 10-Digit PSGC Hierarchy
Traditionally, the PSGC utilized a 9-digit numerical sequence organized in a nested administrative hierarchy. In recent years, the PSA transitioned to a 10-digit code to accommodate future expansion and standardized sub-regional municipal clusters. Both systems break down into four distinct levels:
When analyzing data at the municipality or city level, the last three digits are always recorded as 000. When joining down to the barangay level, these three digits range from 001 to 999, referencing each individual neighborhood or rural village.
2. The 149 Cities of the Philippines: HUC, ICC, and CC Breakdown
Under Republic Act No. 7160 (The Local Government Code of 1991), there are exactly 149 chartered cities across the country, structured into three distinct legal classifications:
- 33 Highly Urbanized Cities (HUC): Cities with a minimum population of 200,000 inhabitants and an annual income of at least ₱50 million (1991 benchmark). HUCs are completely independent of any province; their registered voters do not vote for provincial officials, and their land areas are excluded from provincial jurisdiction. This includes 16 cities in the National Capital Region (such as Manila, Quezon City, Taguig, Makati, Pasig, Caloocan) and 17 provincial metropolitan hubs (such as Cebu City, Davao City, Baguio City, Cagayan de Oro City, Iloilo City, Bacolod, General Santos, and Zamboanga City).
- 5 Independent Component Cities (ICC): Component cities whose legal charters explicitly prohibit their voters from voting for provincial elective officials. Like HUCs, they operate completely independently from provincial governors and provincial boards. There are strictly 5 ICCs in the Philippines:Dagupan City (Pangasinan / Region I)City of Santiago (Isabela / Region II)Naga City (Camarines Sur / Region V)Ormoc City (Leyte / Region VIII)Cotabato City (BARMM)
- 111 Component Cities (CC): Cities that remain under the general administrative supervision of their respective provincial governments (e.g., Laoag City, City of Batac, Tagaytay City, City of San Fernando, Vigan City). Voters in component cities participate fully in provincial elections.
3. Strictly 82 Statutory Provinces (No Province Numbering)
A common pitfall in Philippine cartographic engineering is quoting "84 provinces". In Philippine statutory law and PSA official standards, there are strictly 82 provinces. The additional two entries found in uncurated GIS datasets are administrative clusters, not statutory provinces:
- Metro Manila (National Capital Region - PSGC 1300000000): NCR is an administrative region comprising 16 cities and 1 municipality. It has no provincial governor, provincial board, or provincial capital. In spatial datasets, it is partitioned into 4 administrative districts, not provinces.
- Special Geographic Area in BARMM (SGA - PSGC 1909900000): A non-provincial cluster of 63 barangays in North Cotabato that voted to join BARMM in 2019. In 2024, these barangays were formally constituted into 8 new statutory municipalities.
No Province Numbering: In official Philippine nomenclature, provinces are never numbered. There is no official statutory concept of "Province #1" or "Province #82." Instead, provinces are identified strictly by their geographic name, administrative region, and unique 9-digit / 10-digit PSGC codes.
4. GIS Joining Best Practices: Avoiding the Leading Zero Bug
The single most common bug when joining Philippine demographic spreadsheets to GeoJSON or Shapefile boundaries occurs when spreadsheet software (such as Microsoft Excel or Google Sheets) interprets the PSGC code as an integer rather than text:
For regions in Northern Luzon (Region 01, Region 02, Region 03), codes start with a leading zero (e.g., 0102801000). When opened in Excel without specifying text mode, Excel truncates the leading zero, producing 102801000 (9 digits instead of 10). Joining this truncated integer against standard GeoJSON boundaries results in 100% null matches.
To maintain clean join integrity in Python (Pandas), always enforce string parsing on PSGC columns:
import pandas as pd
import geopandas as gpd
# Load census demographic data with string-typed PSGC codes
census_df = pd.read_csv("ph_census_2024.csv", dtype={"psgc": str})
# Ensure uniform 10-digit zero-padding
census_df["psgc"] = census_df["psgc"].str.zfill(10)
# Load official GeoJSON boundary file
boundaries = gpd.read_file("ph_municipalities.geojson")
boundaries["psgc"] = boundaries["psgc"].astype(str).str.zfill(10)
# Perform inner join on clean standardized keys
merged_map = boundaries.merge(census_df, on="psgc", how="inner")5. Frequently Asked Questions (FAQ)
Where can I view the boundary polygons for these PSGC codes?
You can click any entity in the lookup tool above and click "Explore on Lens Map →" to visualize its official choropleth boundaries, demographic comparisons, and GeoJSON polygon exports directly on Lens.
What is the difference between PSGC Code and Correspondence Code?
The Correspondence Code is the historical 9-digit code system used prior to the 10-digit standardization. In the 9-digit format, digits were allocated as 2 for Region, 2 for Province, 2 for City/Municipality, and 3 for Barangay. The 10-digit PSGC adds an extra digit to the provincial position to allow finer geographic sub-classification.
How often is the PSGC updated?
The PSA updates the PSGC quarterly to reflect official statutory changes enacted by the Philippine Congress or local plebiscites, such as the conversion of municipalities into chartered cities, creation of new barangays, or boundary rectifications.