{
  "snapshot_id": "approved-static-bb6d69cd3c074ae2",
  "schema_version": "immigrationdb-city-resource-v2",
  "generated_at": "2026-08-04",
  "canonical_path": "/cities/es/puigcerda/",
  "mcp_uri": "immigrationdb://city/es/puigcerda",
  "editorial_copy": {
    "status": "reviewed",
    "reviewed_at": "2026-07-29",
    "copy_depth": "city_standard",
    "blocks": {
      "intro": "Puigcerdà is a city in Spain. Puigcerdà had a population of 10,035 at the start of 2025. For Puigcerdà, annual PM2.5 was 8 µg/m³ at the end of 2024. Gigabit broadband availability was 95.3% in 2025. The unemployment rate was 2.15% in June 2026.",
      "immigration_lead": "The foreign population count was 2,427 at the start of 2024."
    },
    "used_claim_count": 5,
    "uses_supplemental_cd": false
  },
  "city": {
    "entity_id": "city:es:wikidata:Q13765",
    "name": "Puigcerdà",
    "country_code": "ES",
    "public_slug": "puigcerda",
    "canonical_path": "/cities/es/puigcerda/",
    "mcp_uri": "immigrationdb://city/es/puigcerda",
    "page_state": "published",
    "useful_blocks": [
      "work_income",
      "mobility_admin",
      "climate_air"
    ],
    "useful_fact_count": 8,
    "city_tags": [],
    "profile_scores": {
      "remote": {
        "point": 46,
        "low": 32,
        "high": 60,
        "factors": {
          "legal_path": 88,
          "cost_pressure": 43,
          "housing": 45,
          "work": 59,
          "family": 92,
          "education": 45,
          "healthcare": 45,
          "safety": 45,
          "air": 63,
          "bureaucracy": 45
        },
        "housing_budget": {
          "status": "estimated_fits",
          "currency": "EUR",
          "fx_date": null,
          "normalized_monthly_eur": 441,
          "source_id": null,
          "basis": "country_median_estimate"
        }
      },
      "skilled_employee": {
        "point": 48,
        "low": 34,
        "high": 62,
        "factors": {
          "legal_path": 88,
          "cost_pressure": 43,
          "housing": 45,
          "work": 59,
          "family": 92,
          "education": 45,
          "healthcare": 45,
          "safety": 45,
          "air": 63,
          "bureaucracy": 45
        },
        "housing_budget": {
          "status": "estimated_fits",
          "currency": "EUR",
          "fx_date": null,
          "normalized_monthly_eur": 441,
          "source_id": null,
          "basis": "country_median_estimate"
        }
      },
      "family": {
        "point": 60,
        "low": 46,
        "high": 74,
        "factors": {
          "legal_path": 88,
          "cost_pressure": 43,
          "housing": 45,
          "work": 59,
          "family": 92,
          "education": 45,
          "healthcare": 45,
          "safety": 45,
          "air": 63,
          "bureaucracy": 45
        },
        "housing_budget": {
          "status": "estimated_fits",
          "currency": "EUR",
          "fx_date": null,
          "normalized_monthly_eur": 441,
          "source_id": null,
          "basis": "country_median_estimate"
        }
      },
      "student": {
        "point": 43,
        "low": 29,
        "high": 57,
        "factors": {
          "legal_path": 88,
          "cost_pressure": 43,
          "housing": 45,
          "work": 59,
          "family": 92,
          "education": 45,
          "healthcare": 45,
          "safety": 45,
          "air": 63,
          "bureaucracy": 45
        },
        "housing_budget": {
          "status": "estimated_fits",
          "currency": "EUR",
          "fx_date": null,
          "normalized_monthly_eur": 441,
          "source_id": null,
          "basis": "country_median_estimate"
        }
      },
      "retirement": {
        "point": 53,
        "low": 39,
        "high": 67,
        "factors": {
          "legal_path": 88,
          "cost_pressure": 43,
          "housing": 45,
          "work": 59,
          "family": 92,
          "education": 45,
          "healthcare": 45,
          "safety": 45,
          "air": 63,
          "bureaucracy": 45
        },
        "housing_budget": {
          "status": "estimated_fits",
          "currency": "EUR",
          "fx_date": null,
          "normalized_monthly_eur": 441,
          "source_id": null,
          "basis": "country_median_estimate"
        }
      }
    },
    "facts_by_block": {
      "identity": [
        {
          "metric_id": "foreign_population_total",
          "block_id": "identity",
          "value": 2427,
          "unit": "people",
          "geographic_scope": "city",
          "observed_at": "2024-01-01",
          "verified_at": "2026-07-15",
          "comparison_eligible": true,
          "source_id": "ine_68537_foreign_population_derived",
          "source_url": "https://www.ine.es/jaxiT3/Tabla.htm?L=0&t=68537",
          "source_title": "Official INE municipal population by country of nationality; foreign total derived as Total nationality minus España.",
          "source_authority": "INE",
          "source_type": "official",
          "source_badge": "Official source",
          "source_quality": "verified"
        },
        {
          "metric_id": "population_total",
          "block_id": "identity",
          "value": 10035,
          "unit": "people",
          "geographic_scope": "city",
          "observed_at": "2025-01-01",
          "verified_at": "2026-06-07",
          "comparison_eligible": true,
          "source_id": "es_ine_puigcerda_stats",
          "source_url": "https://www.ine.es/#index-17141",
          "source_title": "Puigcerdà - official stats",
          "source_authority": "Puigcerdà, Spain",
          "source_type": "official",
          "source_badge": "Official source",
          "source_quality": "verified"
        }
      ],
      "work_income": [
        {
          "metric_id": "broadband_gigabit_availability_percent",
          "block_id": "work_income",
          "value": 95.312939,
          "unit": "percent",
          "geographic_scope": "city",
          "observed_at": "2025-06-30",
          "verified_at": "2026-07-15",
          "comparison_eligible": true,
          "source_id": "seteleco_cobertura_ba_municipio_2025_households_1gbps",
          "source_url": "https://digital.gob.es/content/dam/portal-mtdfp/avance-digital/telecomunicacion-e-infraestructuras-digitales/areas_interes/banda-ancha/cobertura/documents/Cobertura_BA_Espa%C3%B1a_2021-2025_MUN_PROV_CCAA_Nacional_datosgob_DEF.xlsx",
          "source_title": "SETELECO Cobertura Banda Ancha España 2021-2025",
          "source_authority": "Ministerio para la Transformación Digital y de la Función Pública / SETELECO",
          "source_type": "official",
          "source_badge": "Official source",
          "source_quality": "verified"
        },
        {
          "metric_id": "unemployment_total_percent",
          "block_id": "work_income",
          "value": 2.15,
          "unit": "percent",
          "geographic_scope": "city",
          "observed_at": "2026-06-30",
          "verified_at": "2026-07-26",
          "comparison_eligible": true,
          "source_id": "source-655f37e7047f",
          "source_url": "https://www.sepe.es/HomeSepe/dam/jcr:fa01acf9-3b62-435f-a186-155f2f80fd4b/ESTADISTICA_MUNICIPIOS.xls",
          "source_title": "SEPE — registered unemployment by municipality, June 2026",
          "source_authority": "Servicio Público de Empleo Estatal (SEPE), Spain",
          "source_type": "independent",
          "source_badge": "Independent source",
          "source_quality": "verified"
        }
      ],
      "climate_air": [
        {
          "metric_id": "air_quality_pm10_annual_ug_m3",
          "block_id": "climate_air",
          "value": 14,
          "unit": "µg/m³",
          "geographic_scope": "nearest_station",
          "observed_at": "2024-12-31",
          "verified_at": "2026-08-01",
          "comparison_eligible": true,
          "source_id": "633:source:dd9a0a0b4d53eaa7d5c667250b106945",
          "source_url": "https://air.discomap.eea.europa.eu/arcgis/rest/services/AirQuality/AQ_Statistics_WM/MapServer/0/query?where=Country_ISO%3D'ES'%20AND%20AirPollutant%3D'PM10'%20AND%20YearOfStatistics%3D2024&outFields=AirPollutant,AirPollutionLevel,Country_ISO,StationName,YearOfStatistics,UnitOfAirpollutionLevel,ReportingMetric,LatitudeOfMeasurementStation,LongitudeOfMeasurementStation,DataCoverage,Preliminary&returnGeometry=false&f=json",
          "source_title": "EEA air quality statistics — ES PM10 annual mean 2024 (station Puigcerdà (Museu Cerdà))",
          "source_authority": "European Environment Agency (EEA)",
          "source_type": "official",
          "source_badge": "Official source",
          "source_quality": "verified"
        },
        {
          "metric_id": "air_quality_pm25_annual_ug_m3",
          "block_id": "climate_air",
          "value": 8,
          "unit": "µg/m³",
          "geographic_scope": "city",
          "observed_at": "2024-12-31",
          "verified_at": "2026-07-29",
          "comparison_eligible": true,
          "source_id": "source-d118ace83070",
          "source_url": "https://air.discomap.eea.europa.eu/arcgis/rest/services/AirQuality/AQ_Statistics_WM/MapServer/0/query?where=AirPollutant%3D%27PM2.5%27+AND+YearOfStatistics%3D2024&outFields=AirPollutant%2CAirPollutionLevel%2CCountry_ISO%2CStationName%2CAreaOfMeasurementStation%2CYearOfStatistics%2CUnitOfAirpollutionLevel%2CTypeOfMeasurementStation%2CDataCoverage%2CReportingMetric%2CLatitudeOfMeasurementStation%2CLongitudeOfMeasurementStation&returnGeometry=false&resultRecordCount=1000&resultOffset=0&f=json",
          "source_title": "EEA Air Quality Annual Statistics — Spain 2024 PM2.5 provenance repair",
          "source_authority": "European Environment Agency",
          "source_type": "official",
          "source_badge": "Official source",
          "source_quality": "verified"
        }
      ],
      "mobility_admin": [
        {
          "metric_id": "nearest_airport_iata",
          "block_id": "mobility_admin",
          "value": "LEU",
          "unit": "code",
          "geographic_scope": "city",
          "observed_at": "2026-06-13",
          "verified_at": "2026-06-13",
          "comparison_eligible": true,
          "source_id": "ourairports_airports_csv",
          "source_url": "https://davidmegginson.github.io/ourairports-data/airports.csv",
          "source_title": "OurAirports — airports.csv",
          "source_authority": "multi-country",
          "source_type": "official",
          "source_badge": "Official source",
          "source_quality": "verified"
        },
        {
          "metric_id": "nearest_airport_km",
          "block_id": "mobility_admin",
          "value": 43.9,
          "unit": "km",
          "geographic_scope": "city",
          "observed_at": "2026-06-13",
          "verified_at": "2026-06-13",
          "comparison_eligible": true,
          "source_id": "ourairports_airports_csv",
          "source_url": "https://davidmegginson.github.io/ourairports-data/airports.csv",
          "source_title": "OurAirports — airports.csv",
          "source_authority": "multi-country",
          "source_type": "official",
          "source_badge": "Official source",
          "source_quality": "verified"
        }
      ]
    }
  }
}
