Local-first · Free & open source

Birding analytics and tools for your eBird workflow

SnowRaven takes your eBird and Macaulay Library records and lets you explore them in new ways. Weather and tides for your checklists, deep per-species history, life-list analytics, media coverage, breeding records, and an interactive map. It uses your own exported data, on your own device, so you stay in control.

macOS · Windows · iPhone · iPad · Raspberry Pi  ·  No account, no telemetry

The SnowRaven Statistics tab showing life-list totals, a life-list growth chart, and section navigation.
Life list149 species
Tide3.1 ft rising

Privacy by design

Your data stays on your device

SnowRaven has no account, no analytics, no telemetry, and no server we operate. Your eBird backup, Macaulay Library export, settings, and API keys never leave your computer, unless you turn on the optional iCloud Sync on a Mac, iPhone or iPad, which copies the two files, and your API keys only with its separate Sync API keys switch, into your own iCloud account and nowhere else. When you ask for data, it talks directly to the services it draws from: eBird and OpenWeather with your own keys, plus keyless sources (OpenStreetMap, map tiles, NOAA tides, and the Cornell Lab sites that bird-link icons and, while enabled, embedded Macaulay media load from). There is no SnowRaven server in the middle. An off-by-default Disable embedded media setting prevents those players and requests; direct media links still work when you choose to open them.

Read the full privacy policy

  • No accountsNothing to sign up for. Just open it and go.
  • No trackingZero analytics or telemetry, on every platform.
  • Keys & data stay localYour files and API keys live on your machine; syncing either through iCloud is your own opt-in, into your own account.
  • No developer serverWe run nothing. There is no SnowRaven cloud.

What's inside

Ten tools, one quiet workspace. And they work offline

Everything reads from the eBird and Macaulay Library exports you already have. No data entry, no busywork. Once your data has loaded, the tools keep working without a connection.

Weather & Tide Lookup

Paste an eBird checklist ID and get a clean, ready-to-paste weather summary: temperature, wind, humidity, dew point, sunrise and sunset, and the moon phase on night checklists, plus the historical tide from the nearest NOAA station. Current shows the live weather and tide for where you are, Predict forecasts both for a place and time you choose, and a backlog lists your recent checklists that still have no weather block, so you can work down the ones you missed. Each action keeps its own checklist target as you widen or page the list.

The Weather tab showing a formatted weather summary and a tide block for a checklist at Jamaica Bay.

Species Detail

Your complete history with any species: sighting stats, breeding codes, field notes, top locations, sightings-over-time graphs, and a map of every observation, all in one view. A Subspecies Explorer breaks your reports down by subspecies and form, a Counties switch shades every US county where you have recorded the bird (offline, from your own file, no API key), and a Recent Media section plays your latest photo, audio, and video of it inline from the Macaulay Library, showing plain links instead when an embed can't load.

The Species Detail tab for Northern Cardinal, showing sightings, media counts, and breeding category.

Statistics

A full analytics dashboard built from your own data: life-list totals and growth, firsts and milestones, temporal and geographic patterns, effort, data quality, breeding stats, deep media statistics, and a few playful Frivolous Lists. Two off-by-default count rules in the tab header follow eBird's own rules for what counts: Count all forms decides whether forms that leave the species in doubt (a spuh, a slash, a hybrid) are counted, and Count escapees follows eBird's life-list rule for exotics (Naturalized and Provisional count, Escapee does not), naming every bird it leaves out. Both are per-session, resetting on relaunch.

The Geographic Stats map carries the same Counties overlay, shaded by species or by checklists, with numbers that match the county tables beside it, and the Map Explorer's too while Count all forms is off (the Map Explorer always applies the countable-species rule). A Projects section reports which eBird projects your checklists were submitted to: nothing is sent until you press Check projects, the section states the exact cost first, it can be stopped and resumed, and every tally shows how many checklists it was drawn from.

A Weather section reads back the weather blocks SnowRaven and RainCrow have been writing into your checklist comments since the first release. It shows how your outings distribute across sky, temperature, wind and day versus night, the average species per checklist in each band with the same bands' average time out beside it, and, for any bird you pick, the skies and temperatures you have it on. It states what fraction of your checklists it covers before it draws anything, keeps a band you have never birded visible as a zero, declines to average a band with too few checklists, and never predicts or ranks. It is built from the backup you already loaded, so it makes no lookup and works offline.

The bird's own page carries the other half of it. A Weather card on Species Detail shows the skies and temperatures you have recorded the selected bird in, out of the same derivation the Statistics section paints from, so the two always agree. There is no picker on it: you are already looking at a bird. It opens with one number against two different wholes, your weather-block checklists and the checklists you have that bird on, and nothing divides them. A bird with too few weather-block checklists gets a plain sentence and no chart rather than a confident-looking distribution, which is the ordinary outcome for most species. It never predicts or ranks, and like the section it reads only the backup you already loaded, so it makes no lookup and works offline.

Light or dark, your choice. Dark mode shown.

The Statistics tab in dark mode, showing life-list totals and a growth chart.

Calendar

A year of your birding as twelve month grids, each day carrying the species, checklists, or total count you recorded and shaded by how busy it was, so the shape of your year reads at a glance. Filter to a single species, page across every year or fold them all into one combined grid, switch to a whole-year overview of thumbnails, turn on a colorblind-friendly texture mode, and click any day for its checklists. Entirely offline, from your already-loaded backup.

The Calendar tab showing a year as twelve month grids, each day shaded by how many species were seen.

Map Explorer

An interactive map of your sightings, with a heatmap and filters for species, date range, county, breeding code, and media, plus nearby eBird hotspots, a Nearby Lifers view mapping where species you haven't recorded were reported recently, Media Targets, and a California Breeding Bird Atlas overlay. Hotspot pins can be colored by whether you've visited them, or, opt-in, by your own species or checklist counts there or by the community's recent activity, with an optional tier-ring mode so the reading never depends on color alone. County lines can shade each county by your own species or checklist counts, offline from your backup, or by how complete your county list is against everything ever reported to eBird there (that one metric needs a connection and your own key), with a colorblind-friendly texture mode. Search a place name, use your location, drop a pin, or press Search this area after moving the map; nothing is sent until you press. Street, satellite, and topo basemaps, plus a hiking-trails layer.

Three more maps also fill the window on request: a fullscreen button in the bottom-right corner expands the Sighting Locations map, the Geographic Stats map and a Named Birds card map to the whole window and puts them back, keeping the same view, the same open popup and the same dropped pin. Escape closes it and hands the keyboard focus back.

Any birding map also shares a spot: right-click (long-press on touch) to plant a share pin at the exact point you pressed, drag it to fine-tune, and copy the coordinates plus Google Maps and Apple Maps links, ready to paste into a message. Settings chooses which of the three lines you send, a corner button drives the whole flow from the keyboard, and it is all assembled locally as plain text, so it works offline and no coordinate leaves your device.

The Map Explorer tab showing sighting clusters around New York and New Jersey on a street basemap.

Multimedia

Your life list as a media checklist: photo, audio, and video coverage for every species, so you can see at a glance what you still need to capture. Filter by sex and age (pull up just your juveniles, or the males of a dimorphic species), with counts and links straight to the matching media in your Macaulay Library.

The Multimedia tab, a life-list table with photo, audio, video, and total media counts per species.

Breeding Codes

Every species you've recorded a breeding code for, laid out as a color-coded matrix across all eBird codes, with tier and per-code filters to see exactly where your breeding evidence stands. A legend below the table spells out what each code means, and on a phone the columns tighten to dot-width, with the species-name column staying fixed on the left in the normal view.

The Breeding Codes tab showing a species-by-code matrix with tier-colored count badges.

Named Birds

Give an individual bird a name in your eBird species comment with a [name:…] tag (like [name:Winky]), and SnowRaven gathers every sighting of that individual: its species, when you first and last saw it, how long you've followed it and which two dates that measures, each checklist with its location, a map of everywhere that bird has been seen, and its own top locations. A timeline in each card puts that bird's sightings in time, and one strip at the bottom of the tab gives every named bird a labelled lane on a shared axis, so you can see which birds you were following when. Press a mark, or step through with the arrow keys, and a line beneath the strip names that sighting's date and place. One switch moves the far end of every span from the bird's last sighting to today, so the gap since you last saw it becomes visible rather than inferred. With your Macaulay Library export saved, each individual also gathers its own photos, audio, and video as inline players, matched by the same tag. Prefer no inline players anywhere? Turn on Disable embedded media in Settings; direct Macaulay Library links stay available.

The Named Birds tab listing three named individuals with their species, date range, elapsed span and sighting counts, above a strip giving each one a labelled lane on a shared time axis.

Checklists

Your checklists as whole outings. Search every checklist comment and every species comment you've ever written, and browse a filterable list of all your checklists: combine has and doesn't-have filters for comments, media, breeding codes, completeness, protocol, county, and dates. Pasted weather and tide blocks stay hidden (and out of search) until you ask for them.

List Comparer

Compare two life lists to see shared and unique species, or compare two individual checklists side by side: counts with the higher total emphasized, breeding codes, photo, audio, and video indicators, effort details, checklist and species comments, and side-by-side weather and tide for each checklist.

Search anything by name

Press Cmd-K or Ctrl-K anywhere in the app, type a few letters, and press Enter. Search reaches every tab you have visible and every species in your own eBird backup, matching the common name and the scientific name at once, so calypte finds Anna's Hummingbird, and a few letters plus Enter open Species Detail on the bird you were thinking of. Arrow keys move through the results, Enter opens, Escape closes and hands focus back to the control you opened it from, or to the main content when that control has gone away. There is a Search control in the navigation too, at every window width, so it is there on a phone as well.

It makes no network request and saves nothing, so it works offline and without an API key. If you have not saved a backup yet, or a saved one will not load, it says which of the two it is and keeps taking you to tabs regardless.

Offline support

Out in the field with no signal, SnowRaven keeps working from the data already on your device. The maps and every analytical tab open offline once they've loaded online once, and a checklist's weather and tide you looked up earlier re-show, marked as the last loaded result.

Live lookups (current weather and tide, place search, the Checklist Comparer, nearby-bird overlays, and app updates) still need a connection, and only the vector street basemap works offline.

Runs where you do

One app, everywhere you bird

Install the native desktop app on a Mac or Windows PC, get it from the App Store on an iPhone or iPad, or self-host it on a Raspberry Pi (or any computer on your network) and open it from any browser. One universal Mac build runs on both Apple Silicon and Intel, and the whole interface is responsive, so the self-hosted version works in a phone or tablet browser too.

SnowRaven Statistics on a phone-sized screen, showing the responsive layout.

Get started

Up and running in a few minutes

Mac

Download the universal .dmg from the latest release, drag SnowRaven to Applications, then right-click the app and choose Open on first launch.

Download for Mac

iPhone / iPad

Get SnowRaven from the App Store. It is free, needs no account, and runs on iOS 16 or later. Updates arrive through the App Store like any other app.

Download for iPhone and iPad

Windows

Download the .exe installer and run it. SmartScreen may warn about an unknown publisher, so choose More info, then Run anyway. In-app updates are cryptographically verified.

Download for Windows

Raspberry Pi / Linux

Run one command on your Pi (or any Debian or Ubuntu machine). It handles packages, the build, the Python environment, and an optional auto-start service.

$ curl -fsSL https://raw.githubusercontent.com/dtgibson/snowraven/main/install.sh | bash

A personal project, shared freely

SnowRaven began as a tool for one birder's own data, and it's shared here, open source and free, in case other birders find it useful. It works alongside eBird and the Macaulay Library, building on the exports they let you download. There's nothing to sign up for, and nothing to buy.