Fish species identification for products, research and monitoringUpdated
GFL Species IdentificationModels from Global Fishing LeagueTalk to us ↗
For companies, labs and agencies

Fish species identification you can build on

Global Fishing League's species model names 491 species of fish from one photo, and runs on a phone with no connection. We license it to apps, fisheries monitoring and research teams, as a hosted service or a package for your own devices.

How accurate it is

Right first time
84.0%

252 of 300 photos, no location given

In its top three
94.3%

283 of 300 photos

Fishbrain, same photos
48.0%

right first time, in its public app

We gave 300 catch photos of 163 species to the species model in Global Fishing League's test builds and to the Fishbrain app, with no location on either side, and sealed the answer key before scoring. Ours named 252 right first time, Fishbrain 144: a lead of 36.0 points (95% interval 30.3 to 42.0). Global Fishing League ran this test, not an independent lab. Read the method and its limits, or download the results as JSON.

What we license

Hosted identificationSend a photo, get the species back. We set up an endpoint and keys for your team during the pilot.
On-device modelThe model as a package for iPhone and Android apps (Core ML and TensorFlow Lite), so photos never leave the phone.
Your species or regionAn added version trained on your labelled photos, tested on photos held back from training.
Evaluation on your photosSend a labelled sample and get a per-species report before you commit to anything.

What it returns

  • The three most likely species, each with a confidence score.
  • No answer when it cannot find a fish in the photo, rather than a guess.
  • An optional location filter that keeps only species found in the region.

Who it is for

  • Fishing and outdoor apps that want species ID without building a model.
  • Fisheries monitoring teams sorting catch photos for review.
  • Research and citizen science projects that need a first pass on angler photos.
  • Tackle, retail and tourism businesses that log or show catches.

Limits

  • It is built for photos anglers take: a fish held up or laid down on a boat, a dock or a measuring board. It has not been tested on underwater photos or on monitoring-camera video.
  • It was trained first for the United States. Versions for Australia, New Zealand and South Africa are early pilots, and their accuracy is not published.
  • The tested model is in Global Fishing League's test builds; the public apps still use an earlier model.

Questions and answers

Is there a public API or an MCP server?

Not yet. Access is set up for each customer, as a hosted endpoint or a model package, so tell us what you need and we will set up a pilot.

Do you sell photos or training data?

No. We license the model and what it returns, not the photos it was trained on.

Can it learn our species or our region?

Yes, with labelled photos from you. We train an added version and test it on photos held back from training, then share the result with you before you decide.

Can we test it on our own photos first?

Yes. Send a sample with the right answers and we will report how often the model names each species right first time and in its top three.

What does it cost?

It depends on volume and on hosted or on-device use. Pilots are priced per agreement; ask and we will quote.

Who is Global Fishing League?

Global Fishing League is a fish identification, measurement and catch-logging app for iOS and Android, and the competitive fishing league it is built for. The model on this page is the one we build for our own app.

Talk to us

Email admin@globalfishingleague.com with what you want to identify and roughly how many images a month.

Privacy

This page sets no cookies and loads no advertising or tracking. It counts page views and referring sites with Vercel Web Analytics, which is cookieless and does not identify you. The app's privacy policy is on globalfishingleague.com.