tphakala

birdnet-go: Identify Birds and Wildlife from Live Audio with BirdNET

BirdNET-Go is a self-hosted, 24/7 soundscape analyser built around BirdNET, with optional Google Perch and other classifiers for birds, bats, and wildlife. It runs local inference on Linux, Windows, and macOS, including Raspberry Pi systems.

Stars
2.3k
Forks
196
Last commit
today
Contributors
78
Releases, 12 months
21

Our take

Activeregular commits and releases

Health score

70/100

How it is scored
Activity
81
Community
51
Issues
66
Pull requests
83
  • Merges more pull requests than 93% of the projects we track
  • Releases more often than 76% of the projects we track

BirdNET-Go is an actively maintained, feature-rich self-hosted wildlife analyser, though its development is highly concentrated in one contributor and its noncommercial license limits some uses.

Good fit if

  • You want continuous, local BirdNET analysis on Linux, Windows, or macOS, including Raspberry Pi hardware.
  • You need multiple audio sources, optional classifiers, and configurable alerts in one application.
  • Your use is compatible with the CC BY-NC-SA 4.0 license and you are comfortable operating a self-hosted service.

Look elsewhere if

  • You need a permissively licensed project or intend commercial use that conflicts with its noncommercial terms.
  • You want a hosted service rather than managing audio inputs, storage, and the application yourself.
  • You need a project whose development is broadly distributed across its contributors.
All health signals
Last commit2026-10-18 (today)
Commits, last 90 days100+
Releases, last 12 months21 (latest 20261014, 2026-10-14)
Contributors78 (top contributor: 89% of commits)
Issues closed, last 90 days3+ (typically closed in 1 day)
Pull requests merged, last 90 days89 (typically merged in 0 days)
Project age2 years

Checked on 2026-10-18 with the GitHub API.

Overview

BirdNET-Go is a self-hosted, real-time soundscape analyser built around BirdNET, the bird-audio model developed by the Cornell Lab of Ornithology and Chemnitz University of Technology. It listens continuously to soundcard input or network audio streams, identifies wildlife, and presents detections in a web interface. It runs on Linux, Windows, and macOS, including Raspberry Pi systems.

The project is for people who want to monitor wildlife audio locally rather than send recordings to a hosted analysis service. BirdNET is embedded by default; optional models include Google Perch v2 and regional BattyBirdNET classifiers. Multiple models and audio sources can run in parallel, with alerting and integrations for sending detections elsewhere.

Key Features

  • Continuous audio analysis from a soundcard or RTSP/RTSPS streams, with support for multiple sources.
  • Embedded BirdNET model, plus installable Google Perch v2, BattyBirdNET, and BirdNET Geomodel classifiers.
  • Cross-model consensus, configurable confidence thresholds, and filtering tools to help review detections.
  • Live spectrograms, detection heatmaps, and an installable web app.
  • Alert rules that can send notifications through services such as Discord, Telegram, ntfy, MQTT, and webhooks.
  • SQLite or MySQL storage, with backups and database diagnostics.
  • Optional integrations including BirdWeather, Home Assistant discovery, and Prometheus metrics.

Use Cases

  • Birders can run an always-on listening station at home and browse detections from a web dashboard.
  • Wildlife researchers or conservation groups can monitor audio from multiple network microphones and compare classifier results.
  • Bat monitoring requires an ultrasonic-capable recording setup; BattyBirdNET is available for Linux with regional models.
  • Raspberry Pi owners can build a local wildlife monitoring system without relying on a hosted inference service.

What you need

Detected in the repository

  • Go 1.27.2 or newer (from go.mod)
  • A Dockerfile, so it can run in a container
  • Automated checks on GitHub Actions

Getting Started

On Debian, Ubuntu, or Raspberry Pi OS:

curl -fsSL https://github.com/tphakala/birdnet-go/raw/main/install.sh -o install.sh
bash ./install.sh

For Docker, other platforms, hardware guidance, and configuration, see the installation guide and the README.

License in Plain Words

No standard license was detected. Without a license, the default copyright rules apply: you may read the code, but not reuse it. Check the repository or ask the authors.

Considerations

  • The project is active, with regular commits and releases, but most code contributions come from one person despite a larger contributor pool. The open issue backlog is substantial, although the reported median time to close issues is short.
  • Running continuously requires a suitable microphone or network audio stream and a host that can stay online. Bat detection additionally calls for an ultrasonic-capable device; optional ONNX models require ONNX Runtime.
  • The default storage is SQLite, with MySQL also supported. This is a self-hosted application, so operators need to manage the host and its data.
  • The README states the project is licensed under CC BY-NC-SA 4.0. Review its noncommercial and share-alike terms before adopting or redistributing it.
  • Repository metadata does not report a test suite. Teams evaluating changes or integrating the software may want to assess their own verification needs.

Found this useful?

Share it with someone who would like birdnet-go.