Geo Profiling Node
Enrich records with census variables by looking up the area for each coordinate
Last updated 24 Jun 2026
The Geo Profiling node enriches records with census data. For each row it looks up the census area containing the row's coordinates, then appends the configured census variables (raw value, z-score, and decile) to the row.
When to Use
Use Geo Profiling when your records have geographic coordinates and you want to append census variables — population, income, education — for targeting or segmentation.
Configuration
| Field | Type | Description |
|---|---|---|
latColumn | string | Column containing latitude (default: latitude). Required |
lngColumn | string | Column containing longitude (default: longitude). Required |
country | string | ISO 3166-1 alpha-3 country code (e.g. "SWE"). Required |
variables | string[] | Census variable codes to fetch. At least one is required |
level | number | Target hierarchy level (0=country, 1=region, 2=municipality, 3=DeSO). If omitted, the smallest containing area is used |
radiusKm | number | If set and > 0, falls back to the nearest area within this radius when the point isn't inside any area |
includeAreaInfo | boolean | Include the matched area's code/name/type columns in the output (default: true) |
Example
Enrich Swedish leads with municipality-level census data:
latColumn: lat
lngColumn: lng
country: SWE
level: 2
variables:
- P_PERS
- MED_INK
radiusKm: 5
Output
For each configured variable <code>, three columns are added:
| Column | Description |
|---|---|
gp_<code>_value | Raw census value |
gp_<code>_zscore | Z-score for the area |
gp_<code>_decile | Decile rank (1–10) |
When includeAreaInfo is true, the matched area is added as _gp_area_code, _gp_area_name, and _gp_area_type. Standard batch-status columns (_success, _error, _error_code) are also appended.
Notes
- Records whose coordinates don't fall within any census area (and aren't matched by
radiusKmfallback) are passed through with null census columns and aCENSUS_AREA_NOT_FOUNDerror code. - Coordinates outside valid lat/lng bounds are treated as no-match.
- Currently loaded coverage: Sweden (SWE) — ~6,300 geometries with H3 spatial indexes.
- Point-in-polygon matching uses GIST indexes for exact results; area lookups have a timeout and degrade gracefully (null census fields) on timeout.
- Variable codes are country-specific. See the Census Variables reference for available codes.
Related articles
Still stuck? Browse the FAQ or contact us.