Methodology & sources
BirdMap is only worth trusting if it's honest about what it knows. Here's exactly where our data comes from, how we turn it into maps and timing, and the lines we won't cross.
Where the data comes from
Our observation layer is built from research-grade records on iNaturalist, shared under open licenses (CC0 and CC-BY) through the Global Biodiversity Information Facility (GBIF). “Research-grade” means the identification has been confirmed by the community, not just proposed. We pull only birds (class Aves), only records with real coordinates.
Place boundaries come from Natural Earth (public domain). The basemap is OpenStreetMap data. We cite the source on every data page.
What we deliberately don't use
We do not use or redistribute eBird data. It's a wonderful dataset, but its terms and density aren't ours to repackage, and we'd rather build on data we can stand behind openly than imply a completeness we haven't earned.
How we compute timing
For a species in a given state, we count observations by week of the year and show each week's share of that species' annual total. The peak is the busiest week. The first-seen and last-seen markers are the earliest and latest weeks that clear 15% of the peak — the ragged edges of a season, not the outermost stray record.
If we don't have enough records to say something honest, we say nothing and mark the page as thin rather than inventing a curve.
The honesty rule
Every layer wears a badge, and no layer is allowed to look like another:
Sighting a real, dated observation Modeled a computed estimate Community a birder's shared sighting Historical an older record
When a modeled layer isn't ready, we don't show one. A prediction will never be dressed up as a fact on this map. Read more in how to read a bird map.
Known limitations
- Observations track where people go, not just where birds are — roadsides and parks are overrepresented.
- Coverage is uneven; a blank area may mean “nobody looked,” not “no birds.”
- Timing reflects the years of data we hold, and shifts as more records come in.
Sensitive species
iNaturalist already generalizes the locations of sensitive species — threatened birds, active nests — before those records are ever published, so an exact nest or roost doesn't reach us to begin with. On top of that, our map never serves a point finer than roughly neighborhood resolution. We publish general presence (“this species occurs here”), never someone's exact spot.