How we compile our data

Where our wildlife numbers come from

Every figure on a Easy Street Markets wildlife page traces back to a named public dataset. This page lists each source, how we turn it into a number, and what we do when the data is thin or missing.

Last reviewed 2026-07-16.

Our sources

SourceWhat it powers
iNaturalist

Observation data and Creative Commons photos, attributed per record.

Verifiable observation counts, the 12-month sighting distribution, the species census, the live latest-sightings feed, and most page photos.
eBird (Cornell Lab of Ornithology)

Cornell Lab of Ornithology, used with attribution.

Birding hotspots and recent checklist activity used in the plan-your-sighting panels.
GBIF

Aggregated occurrence records, attributed to GBIF and its publishers.

Historical occurrence totals that back up the presence answer for each animal.
NatureServe Explorer

NatureServe Explorer, cited on every page that shows a rank.

Conservation status ranks, both global (G) and per US state (S), shown with NatureServe's own definitions.
Xeno-canto

Each recording keeps its recordist credit and Creative Commons license.

Real, US-recorded bird vocalizations on bird pages, with a spectrogram-grade audio clip.
National Park Service

Public domain, courtesy of the National Park Service.

Nearby parks, their designations, and on-site activities for trip planning.
U.S. Fish & Wildlife Service

Public domain, courtesy of the USFWS.

Federal protection status for species that carry a listing.

How each number is calculated

Sighting counts and “are there {animal} in {state}”

We count verifiable iNaturalist observations recorded inside the state boundary. We show the real number even when it is small, because a low count is itself the most honest answer to whether you are likely to see one there. We never round a thin number up to look impressive.

Monthly distribution and best time to see

The month-by-month chart is a histogram of when verifiable observations were logged. We only publish a best-time calendar for a taxon once it clears a 50-observation floor, so the seasonal curve reflects a real pattern rather than a handful of records.

Species census and “{N} types of {animal}”

The count of distinct species is taken straight from iNaturalist's species tally for that taxon and state, filtered to true species. N is never a guess and never the length of a shortened list. When a group spans many species we say so plainly.

Conservation status

We display NatureServe's rounded global (G) and subnational (S) ranks, on a scale from 1 (critically imperiled) to 5 (secure), with NatureServe's plain-language meaning. NatureServe ranks a single species, so for broad groups (an entire owl order, for example) we show no single rank rather than invent one.

Sounds

Bird pages carry US-recorded, quality-A recordings from Xeno-canto for that species or family. Each clip keeps its recordist credit and license, exactly as Xeno-canto requires.

How these pages are written

There are more than twenty thousand pages here and one person behind them. That arithmetic only works one way, and you deserve to know which way.

Every page is assembled programmatically. The numbers are read directly from the datasets above. The prose around them is drafted by AI language models working from those same records, then checked automatically for accuracy against the source data and for the padding and filler that models tend to produce. Nothing reaches the site until I review the batch and publish it myself. No page is written by hand, and no page is published without a human deciding to publish it.

Posts on this site carry my name. That byline means I chose the sources, set the rules the pages follow, and am answerable for every claim on them. It does not mean I typed each one, and I would rather say that here than let a date stamp imply otherwise.

The judgement calls are the part that is genuinely mine, and they are the ones that matter: which datasets to trust, the 50-observation floor before a seasonal pattern gets published, the decision to print “no verified records” on a page that would earn more if it claimed otherwise, and the choice to drop thousands of photographs whose licences did not permit commercial use. A model can draft a sentence. It cannot decide to publish an answer that costs you money because it happens to be true.

When there is no data

If an animal has not been recorded in a state, we say so. We would rather show an honest “no verified records” than invent a number to fill the space. The same rule holds for conservation status and sound: when a source does not cover a species, that section simply does not appear, instead of guessing.

What we do not do

  • No AI-invented statistics. Models draft the prose, but every number comes from the datasets above and is checked against them before it is published.
  • No fabricated ratings or prices in our structured data.
  • No paid placement. Sources are chosen on coverage and reliability, never on payment.
  • No pretending. If the way this site is built is not what you assumed, that is what the section above is for.

Found something wrong?

Data shifts, and we miss things. If a figure looks off, tell us and we will trace it back to the source. More about who runs this on the author page.