3 different stats for identifications- which is correct?

Good morning!
I’m not sure if bug reports is the right place to ask this question, but I’m wondering how my identification stats are generated- and why I get 3 different numbers, depending on where I look. Right now, here’s what I see:
On the website, profile page: 304,946
On the website, IDs page: 308,674
On my phone, Android iNat app: 305,049

1 Like

I’m not totally confident with this but I suspect different platforms have different ways of calculating certain things. The same can be said about observation count. On iOS, I think casual observations count towards total observation count and on the site they don’t, or vice versa.

The curator page is meant to show taxa curated, taxonomy swaps and flags resolved but sometimes profiles are missing entirely. Today, I am not a curator at all according to that page’s stats. I think there’s a flaw in calculating different things across the board.

1 Like

There are a fair amount of existing threads on how identifications are counted and why they are different in different places. Some examples:


Great- thanks for the links!

this has been covered in many previous threads, but i read through a few, and i don’t think the answers i’m seeing are quite right. so i’m going to try to provide what i believe to be the correct answers here.

the Identifications webpage count and the count from the main page in the Android app are probably both counts of total (“identifications for others”) records in the identifications table, filtered slightly differently. the Android app’s total includes only current (not withdrawn) identifications, whereas the IDs page includes all identifications (including withdrawn).

(this should match the total on the Identifications webpage: https://jumear.github.io/stirfry/iNatAPIv1_identifications.html?per_page=100&own_observation=false&user_id=3133703&current=any, and this should match the total in your Android app: https://jumear.github.io/stirfry/iNatAPIv1_identifications.html?per_page=100&own_observation=false&user_id=3133703.)

i’m not entirely sure how the identifications count in the profile is derived, but it’s an old page. so i wouldn’t be surprised if it’s doing something odd like keeping a running tally of your identifications, and adjusting for withdrawals, etc. i think the intent of the page is to report the same statistic that shows up in the Android app main page (current identifications), but if there’s a discrepancy between the two, i would tend to trust the Android app count because there have been known instances of inaccurate counts on the profile page (see https://forum.inaturalist.org/t/zero-observations-for-user-with-one-observation/4407/11).


on desktop, the ID count on someone’s profile = active IDs on both verifiable and non-verifiable observations from what I can tell


as noted above, i think i know what the profile count is supposed to represent – we’re not in disagreement – but just to clarify, i’m not 100% sure of the exact series of steps that occurs in the black box to create that particular statistic. (i could look at the code to try to figure that out, i suppose, but i suspect it’s not worth the effort, and it’s probably going to open up more cans of worms.)

that said, i looked at one more possible source of the profile identification count, and i think i see where the main discrepancy between profile count and Android app count may be coming from. before, i made the assumption that counting active identifications would be equivalent to counting observations with active identifications, but that does not appear to be true.

if you count identifications (as noted in my earlier post), then this should tie to the Android app count: https://jumear.github.io/stirfry/iNatAPIv1_identifications.html?own_observation=false&user_id=mmmmbugs&verifiable=any.

however, if you count observations, then it looks like you’re more likely to get back to the total identification count noted on the profile page (except for maybe in some of the odd cases like what i noted in my previous post): https://jumear.github.io/stirfry/iNatAPIv1_observations?ident_user_id=mmmmbugs&not_user_id=mmmmbugs.

i can’t explain why counting active identifications is not equivalent to counting observations with active identifications, and i’m not going to dig into it right now (or maybe ever), but i suspect it’s mainly related to cases where identifications have somehow been orphaned, such as described here: https://forum.inaturalist.org/t/orphaned-identification-record-returned-from-api/30372. (if my suspicion ends up being true, then any difference would probably be related to observations that have been deleted since being identified.)

… that said, in cases where there’s a discrepancy, i still would tend to use the count on the Android app vs the count on the profile page, since the former is actually counting identifications (even if maybe some of them are orphaned at this point).

… in the end, i don’t think there’s a bug here exactly either. i might change the way the identification count on the profile page gets created just to make it consistent throughout the system, but it doesn’t seem like a particularly important change to make.

1 Like