Skip to content

Portugal Territorial Crosswalk

Portugal's administrative divisions from 2001 to 2025, reconciled through time.

2,063

freguesias abolished in 2013

97,815

conversions in the crosswalk

Numbers as of September 2026, checked against the listing documentation.

1. The problem

In 2013, Law 11-A abolished 2,063 freguesias (Portugal's smallest administrative subdivision) and created 895. In 2025, Law 25-A undid 135 of those mergers into 302 new freguesias.

The practical effect is simple and costly: a 2010 freguesia code does not exist today. Any statistical series from before 2013 — tourism, housing, public procurement, elections — is incomparable with the current one until someone does the conversion.

And the conversion is not a one-to-one match. Freguesias merged into groups, some of them split apart again twelve years later, and in some cases the law states which merged without stating in what proportion to split the total.

2. What's published, and what isn't

Portugal's Directorate-General for Territory (DGT) publishes the Official Administrative Chart of Portugal every year. There have been 27 editions since 2001, all available, all correct.

What isn't published is the link between them.

Each edition is a snapshot. None of them says what happened to a code that disappeared from one edition to the next, or where the population it represented went.

3. How the data is built

The conversion has four methods, and every row declares which one it used.

  1. Statutory correspondence. The law states that freguesia A came to form part of B. No ambiguity, no estimation — this is the preferred method, and it covers most cases.
  2. Identity. The code didn't change.
  3. Population-based apportionment. When the law splits a freguesia across several others without stating the proportion, the weight comes from resident population measured at the statistical subsection level — the finest unit the census publishes.
  4. Area-based apportionment. Last resort, used in 9 of 97,815 rows.

The hierarchy matters more than any single method. A crosswalk that estimates everything by area is easy to build and gets it wrong exactly where population concentrates: a merger in Porto split by area assigns weight to uninhabited hillsides.

Population comes from the census immediately before the reform, not the most recent one. It's the only one that knows the freguesias the reform abolished — using a later one would attribute to the past a distribution that only existed after it.

Historical names and codes come from the edition of the time. The name of the concelho (the administrative level above the freguesia, roughly comparable to a municipality) in 2003 is whatever the 2003 file publishes, not today's.

4. What this data does NOT do

  • Doesn't record a boundary change that doesn't change a code or a name. The DGT redraws boundaries almost every year. Anyone who needs the territory, not the identity, has to go to the geometry.
  • Doesn't convert between two historical editions. It covers any year to the current one — not 2005 to 2013.
  • Doesn't publish historical geometry. Geometry ships only for the current division, at three levels of detail. The product here is the series of codes over time; publishing the geometry of all 27 editions would multiply the size by twenty-seven.
  • One territorial unit has no name, and that comes from the source: the islets of Porto Santo appear on the chart with no designation. The dataset explicitly states that the name was left blank, instead of inventing a place name.

5. How we know it's correct

Every publication runs through 151 automated checks. Three are worth naming:

Weights have to sum to exactly 1 per origin. That's what guarantees that converting a summable quantity preserves the total.

The reconstructed population has to reproduce the census. The 10,562,178 residents of 2011, down to the individual.

There's a versioned quality statement, and a test that checks it against the data. If the dataset claims it has one unnamed unit, the test counts and compares. That mechanism is what caught the last incomplete change before it was published.

The measured limitations are declared in the dataset itself, with the exact count — including the inconvenient ones.

6. Access

Published on the Snowflake Marketplace, free of charge.

Sources: Portugal's Directorate-General for Territory (DGT) and Statistics Portugal (INE) — both under CC BY 4.0, which permits commercial use. The attribution each requires travels with the data, in the exact form the licensor designates.

7. Found a problem? And how to follow what changes

A reported error is more useful than one nobody found: hi@insigne.tech. Tell us which table, which row, and what you expected.

The newsletter. Every change to the data raises the dataset version and enters a changelog, which goes out through it. But it isn't only that: it's also where the making-of these datasets comes out, and what we learn working with public data — which almost never arrives ready to use.

An occasional email, no noise.

No spam. Unsubscribe anytime. Privacy policy

Public data rarely arrives in the shape you need it. This crosswalk exists because a project needed it and it didn't exist.

If your case sounds similar, that's what we do.