How to search for 1st Records in a "region"


What is an easy way to search for 1st records ever in a region (& within an ongoing project in that region)

Would it need to be done “manually” - i.e look at each species / genus that is reported within a region (and during the project period) and check if they are new / 1st records.


I wrote a little piece of software to do this sort of analysis for the CNC this year. It might be possible to use it for what you want, maybe with some changes.

It takes a CSV export of observations and produces a report like this:

Let me know if this is similar to what you need, and I can run it over your project and send you the report if you want.

Alternatively, if you really just want to look for the first observations of each species in a given location, it’d be a simple matter of downloading the CSV export and ordering the observations by date observed, earliest first.


just to clarify, which of the following best describes what you’re trying to do?

  • find the earliest documented date that a given taxon was known to exist in the area (earliest observation date)
  • find the first time a record of a given taxon was made (first submit date)
  • on a go-forward basis, report when new species are identified in an area (first identification date)

I’d also love to have this search as something I can do. I’m often very curious if a species submitted to a project of mine is new for the project or not, and I’d also like to see the progression of species added over time.

To answer @pisum’s question, I want to be able to pull up a list that shows the first observation date for species in an area or project (first submit date would be nice, too). For a project, it seems like this could be added to the Observations tab if you could filter for first sighting only and sort by date. eBird has a very similar function that I use all the time to track new species added to a particular hotspot (e.g.,, and I’d very much like to see that on iNat. If there’s already a way to do this manually, I have not figured it out yet.


1 Like

On the species tab on a place page there is a tiny icon on the top left corner of each species’ photo, and if you hover over it, it will say who the first observer of that species in that place was. e.g.
Not super useful or convenient but that’s the closest thing I know of that exists.

1 Like

Hi @Pisum

To give a context which may help - we are organising (in the midst of) a 50 day [Monsoon Beauty event] ( We are seeing interesting records that are either new for India or for any of the 28 states or Union territories.

We are looking for any 1st to highlight the value of the process and the value of contributions. Someone in another thread pointed out that 1st records are only 1st till some one uploads an older record (but in a way the date of submission also becomes relevant)

Some are first records for inaturalist per se (& are first records in the public domain) [like this ] ( - two records on all of Inat - a search will reveal images of these on google groups or semi closed groups but not “officially” in the public domain.

This is [another example - Asiarcha oblonga] ( A friend, @muscicapa then helped create the wiki for this.

Many observations first record, on iNaturalist, for a state, or country (am not going to go into the smaller administrative unit of County / District because that will be madness)

The idea is not to find 1st records, to science, ever - that would probably not happen - but to help people appreciate that any observation they are providing is valuable because there may be no records of that (or not easily accessible public domain) for their specific Country/ State/ District .

I am fairly sure that since some of the documentation is happening outside of traditionally researched areas and but non scientists that they are seeing interesting things.

Does this help


Did not know this “tool”. Quite nice - it will be some use for sure - slow work though

One thing is it may be useful to sort wrong identifications. Seems like some with just 1 or two observations may be incorrectly identified and some how have got bumped up to RG by careless “seconders” [like this] (

It may be harder to find 1st record. I noticed that for my [state location] ( somewhere around the 42nd page the 1st observer icon seems to disappear .

the thing that upupa-epops mentioned is the first thing that i thought of when you mentioned this particular eBird page, but i think the way you’re using that page is sorting by date added desc and then looking for recent additions, and i don’t think that iNaturalist place page allows you to do anything similar.

there is an /identificaitons/recent_taxa API endpoint that i occasionally use to detect when there are new species added to a project. (i used it to clear up a lot of mistaken identifications in my local CNC project the last go-around.) i’ve written a page that helps display the API’s response in a way that is a little more user-friendly, although the output is still a little quirky.

here’s some additional discussion about the recent_taxa endpoint:

there’s also a “new species in project” tool that someone else wrote that may be useful for species detection. i haven’t really looked at it much, but i think it operates on either observed or submitted date rather than identification date, which i think is less ideal for rapid detection, though there are pros and cons of both approaches.

you could also run the thing that barnabywalters mentions above, but it may be less user-friendly if you’re not comfortable running python.

if you’re thinking about something like what the date-added-sorted eBird first lists does, there’s not an easy way to do that without running a CSV export that contains all observations in your set and then aggregating those results to get the min(observed date) or min(submitted date) – or min(id) as a proxy for min(submitted date) – for each taxon. i sort of talk about how to do that in, and i assume barnabywalter’s thing is doing something similar, except in python.

if instead you’re thinking about creating a graph of species counts over time, then you could also parse out a CSV, but i think doing something like what’s mentioned in the posts below is probably easier:

you could also modify slightly to achieve the same kind of thing as what’s described above. (if you want more detailed steps, let me know.)

ok. so really you’re trying to compare 2 sets of observations (your project vs everything recorded in the area). this is tricky because of the large number of observations / species involved in the 2 sets. you can use iNaturalist’s experimental compare tool do do this for sets that include fewer than 500 species (or, really, taxon leaves). see for an example.

you can work around the 500 species limitation of the tool by breaking your taxa up into logical groups of taxa. alternatively, you can get the complete lists of the taxa from your 2 sets using the API’s observations/species_counts. and then compare those 2 lists yourself. if you’re not familiar with how to interact with the API directly, this page described here might help:

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.