Research updates and expository writing on data-driven studies of human mobility, epidemics, and disasters, including discussion of open problems and related methodological issues. By Leo Ferres
The literature has treated cell towers as isotropic light bulbs since 2008. They’re really not (that’s why sometimes you don’t have a mobile phone signal!).
Left: Voronoi tessellation of 1,292 BTS across Santiago (R13), ~6 km window over the downtown core. Each tower owns every point closer to it than any other mast, with 360° coverage assumed.
Right: the same towers, drawn as directional sector wedges built from the azimuth field that has always been in the catalog. Most masts carry three antennas radiating ~120° beams; a few carry six.
Dropping the isotropic assumption pulls the median effective radius from 504 m to 375 m region-wide, and from 245 m to 181 m inside this window. Sub-kilometre spatial resolution from a column already in the data.
The black gaps in the right panel are not missing values. They are the map being honest about where no antenna is aiming.
I’m working on a series of blog posts and “spinoffs” of this paper:
Ferres, L., & Elejalde, E. (2026). Systematic biases in mobile phone mobility data from heterogeneous tower density. Zenodo. https://zenodo.org/records/19484460
Next, I’ll try to explain the statistical methods we used, and how we can correct the values.
New preprint and accompanying software release: “Systematic biases in mobile phone mobility data from heterogeneous tower density,” with Erick Elejalde (L3S, Leibniz Universität Hannover).
Mobile phone records (CDRs and the higher-resolution XDRs) are now standard inputs for human mobility, epidemic modelling, and disaster response, but the spatial distribution of cell towers introduces measurement biases that are rarely quantified. Towers cluster in cities and thin out in rural areas. The result is a spatially structured detection floor: short rural trips never cross a sector boundary and are invisible, rural users get misattributed to oversized Voronoi cells, and origin-destination matrices end up artificially urban-centric. The biases are correlated with the very variable (urbanicity) that researchers most often want to study.
We characterise the problem and propose a six-step correction pipeline:
1. Sector polygons inferred from antenna azimuth and height, replacing the standard tower-point Voronoi tessellation 2. Detection-floor modelling at the per-site level 3. Dasymetric redistribution of census population onto an H3 hexagonal grid 4. OD construction with intra-site sector-crossing recovery 5. Inverse probability weighting with a tower-density-aware inclusion probability 6. Fay-Herriot small area smoothing toward a gravity prior
Applied to the Región Metropolitana de Santiago using a 63,832 antenna catalog, the 2024 Chilean census, and 6.5 weeks of XDR data:
– Sector polygons give a 3.0x gain in effective spatial resolution over tower-point Voronoi (median 299 m versus 894 m) – The 50% detection threshold ranges from 16 m in the urban core to 2,542 m at the most isolated site – Intra-site sector crossings recover roughly 100 million short-distance trips (median displacement 429 m) that are invisible at the tower level – IPW uplifts rural comuna flows by 50 to 73%, while the urban core is slightly downweighted – Fay-Herriot shrinkage weights vary from about 0.7 in the urban core to under 0.1 at the periphery, mirroring the tower-density gradient
The pipeline is implemented in mobilens, an MIT-licensed Python library that is operator- and country-agnostic. The minimum inputs are a tower catalog with azimuth and height, a census population layer at any administrative level, and a study area boundary polygon. Steps 1 to 3 (the spatial characterisation of the bias) can be carried out without any XDR data, which makes the library useful even where records are unavailable.