Your feedback on using ID apps

, 22 August 2023
Your feedback on using ID apps
Marbled White © Barry Yates

Merlin (with a cochlear implant)

Sarah Playforth has a cochlear implant and gave Merlin a go at our suggestion. She was kind enough to tell us what she thought.

Sarah Playforth
Sarah Playforth

'I walk from my home and back to Seaford Head most days with my Hearing Dog, laid back Labrador Zen. As a child I walked those same paths with my first dog, Sam and the area is as familiar to me as my own home. I’m profoundly deaf, so my enjoyment of walks is largely through my senses of sight, touch and smell, not hearing, but wearing a cochlear implant I can sometimes hear, but rarely identify, bird song. 

I’ve tried another app before Merlin but never got on with it. Merlin is so easy to use but at first I waited until I thought I could hear birdsong before switching it on and was not successful. I then tried a different tactic. Instead of waiting until I ‘thought’ I heard birdsong I stopped a few times on my usual walk route, opened Merlin and was rewarded with the sounds of a linnet, a Magpie and a Chaffinch. I played the recordings back at home so I could actually hear them. One of the recordings had a very odd sound, which I realised was no bird, but Zen whining as he wanted to move on! 

On holiday near Battle, I got Magpie again and Great Tit. Near my home - unsurprisingly, given my home is near the sea and we have bird feeders outside our window - the app picked up a Yellow-legged Gull and House Sparrow. My best day so far was during our usual Zen ‘pit stop’ for ball throwing, a titbit and water. Sitting quietly on ‘our bench’ Merlin, in the space of a minute, rewarded our silence with the sounds of Green Woodpecker, Chiffchaff, Wood Pigeon, Collared Dove, Robin, Great Tit and Jackdaw. I did hear the Woodpecker but without Merlin, would have thought it was a dog barking. It’s a treat to identify more than Crows, Gulls and Pigeons, both of which spend a lot of time in our garden and have cries loud enough for me to hear. Now my walks are not complete without my phone sufficiently charged for a Merlin stop.'

Chaffinch singing © Neil Fletcher
Chaffinch singing © Neil Fletcher

Merlin

Tamara Jewell from the Gatwick Greenspace Partnership. 'I tried out Merlin app at home to decipher which birds were singing in my woodland garden. I was quite impressed with all birds it picked up and can see how this can be helpful in identifying bird song as it isolates the song and provides other examples, but without being an expert on bird song it’s hard to tell how much it is getting right. Results were somewhat undermined by it detecting a Coot. I am pretty sure there was not a Coot in the woods with no rivers or lakes nearby.'

Charles Le May: 'Love the Merlin app. I had seen Blackcaps on my feeder, but not recognised their song before. The app makes the occasional howler, but they are easily identified.'

Blackcap singing © Neil Fletcher
Blackcap singing © Neil Fletcher

Adrienne Norbury: 'I have used Merlin a lot this year. I have been thrilled to hear do many birds in my environment, and now I am getting to recognise the birdsong which Merlin has taught me. There have been a few silly IDs by the app, and there are some which are just between logical and illogical which are baffling. I think it’s best to record these on iRecord as UNCERTAIN, rather than dismiss the record because it might not be genuine. If records like this are made, it could be that time will tell if it's a genuine record or not.'

Writer Lev Parikian says: 'It recognised a lot of birds from scant information – just a cheep here or a tsip there. And it sorted out a Goldfinch and a Blackcap singing simultaneously – I only realised the Goldfinch was singing when the Blackcap stopped. I think Merlin works best as an aid to learning... it does help if you have a little knowledge and are prepared to use your critical faculties when examining the results. Was that really a Common Sandpiper (a small wader and habitué of hill streams, reservoirs, lakes and gravel pits) lurking in the bushes at West Norwood Cemetery? I think not. Did a Lapwing (another wader, known mostly on farmland) grace me with its presence in distinctly un-farmy Regent’s Park on Wednesday? With the best will in the world, no, it did not.'

Obsidentify

PK on Twitter says: ‘It’s useful for confirmations, general directions, genus ID - just don’t rely on it and do back-up research’.

Wildlife photographer and butterfly enthusiast Bob Eade says: ‘I don’t use an app for butterflies in the UK as with only 60 odd species it isn’t that hard to get to know them. However, for moths and plants, and other insects where the number of possible species is vast, I do use ObsIdentify. However, it’s only generally to get a rough idea of the ID. I would then check it out with photos online. Several times it has come up with 100% positive ID when I know it’s wrong. It has also helped though, and many times has saved me a lot of time by getting me close enough to the right ID.’

Alan Salter: 'I use ObsIdentify daily to confirm my identifications and to point me in the right direction. Generally good for butterflies and moths but not infallible. Merlin is great for people trying to learn some birdsongs but even complete amateurs like me can tell it’s sometimes way out. I would say both applications are useful but I still have a stack of books and use online enthusiasts to help me a lot.'

BirdNET

Sarah Playforth, who as we mentioned earlier with regard to the Merlin app (which we encouraged her to try), uses a cochlear implant, says: 'I currently have the BirdNET app on my phone as I can sometimes hear birdsong via my cochlear implant if I’m close enough and there are no other sounds. I have picked up Yellowhammers, Blackbirds, Robins and Kittiwakes with it, but I don’t find it an easy app to use, often get in a muddle with it, and would love a simpler one that only needed one or two processes.'

Gatwick Greenspace Partnership (GGP) Youth Rangers Troy, a keen birder:

'Asides from BirdNet, I do not use any ID apps. BirdNet is solid once it knows roughly where you are. Without that grounding some of the results from the "wild guess" feature can be very far off.'

SEEK

Jo is an adult volunteer with the GGP group:

'SEEK works ok if you are able to focus in sufficiently on the insect or plant, although it cant recognise flowers unless they are fully out.'

Lee is an attendee from Manor Green SEN college

'I found it really hard to focus and zoom in on small things with SEEK'

Ryan comes as a 1:1 with a Youth Rangers attendee

'I liked the challenges on SEEK. You can level up with badges which is fun'

PictureThis

Les Binns: 'I’ve been using PictureThis for botany, and Merlin, in conjunction with the Collins Bird Guide, for birds. Altogether very useful when in the field but, as you say, use and check to confirm ID!'

Leave a comment
Time Δ Debug Message - Perch Runway 3.2
1782778260.80560 [906] SELECT p.pagePath, pr.routePattern, pr.routeRegExp, p.pageTemplate, pr.routeOrder, s.settingValue AS siteOffline FROM swt_pages_staging p LEFT JOIN swt_page_routes pr ON p.pageID=pr.pageID LEFT JOIN swt_settings s ON s.settingID='siteOffline' UNION SELECT NULL AS pagePath, pr2.routePattern, pr2.routeRegExp, pr2.templatePath AS pageTemplate, pr2.routeOrder, NULL AS siteOffline FROM swt_page_routes pr2 WHERE templateID!=0 ORDER BY routeOrder ASC, pagePath ASC
1782778260.83430.0287Matched route: news/[slug:s]
1782778260.83440.0001Server address: 216.73.217.103
1782778260.83450Using master page: /templates/pages/blog/post.php
1782778260.83450Page arguments:
Array
(
    [0] => /news/your-feedback-on-using-id-apps
    [s] => your-feedback-on-using-id-apps
    [1] => your-feedback-on-using-id-apps
)
1782778260.83480.0003 [1] SELECT * FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782778260.8360.0012 [86] SELECT DISTINCT settingID, settingValue FROM swt_settings WHERE userID=0
1782778260.83820.0022 [1] SELECT locationID FROM swt_shop_tax_locations WHERE locationIsHome=1 LIMIT 1
1782778260.83910.0009INSERT INTO swt_shop_cart(memberID,locationID,currencyID,cartPricing,cartProperties) VALUES(NULL,'1',47,'standard','[]')
1782778260.84170.0026 [1] SELECT * FROM swt_shop_cart WHERE cartID=22435529
1782778260.84260.0009 [1] SELECT * FROM swt_shop_cart WHERE cartID=22435529
1782778260.84360.001 [nil] SELECT * FROM swt_shop_sales WHERE saleFrom<='2026-06-30 00:11:00' AND saleTo>'2026-06-30 00:11:00' AND saleActive=1 AND saleDeleted IS NULL ORDER BY saleOrder ASC
1782778260.84540.0018 [1] SELECT SQL_CALC_FOUND_ROWS DISTINCT tbl.* FROM ( SELECT idx.itemID, main.*, idx2.indexValue as sortval FROM swt_blog_index idx JOIN swt_blog_posts main ON idx.itemID=main.postID AND idx.itemKey='postID' JOIN swt_blog_index idx2 ON idx.itemID=idx2.itemID AND idx.itemKey='postID' AND idx2.indexKey='_id' WHERE 1=1 AND ((idx.indexKey='postSlug' AND idx.indexValue='your-feedback-on-using-id-apps')) AND idx.itemID=idx2.itemID AND idx.itemKey=idx2.itemKey GROUP BY idx.itemID, idx2.indexValue, postID ) as tbl WHERE (postStatus='Published' AND postDateTime<='2026-06-30 00:11:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 10
1782778260.8590.0135 [1] SELECT FOUND_ROWS() AS `count`
1782778260.86260.0037 [1] SELECT * FROM swt_blog_posts WHERE postID=3163 AND postStatus='Published' AND postDateTime<='2026-06-30 00:11:00'
1782778260.86450.0019 [13] SELECT * FROM swt_blog_sections ORDER BY sectionTitle ASC
1782778260.86570.0012 [1] SELECT * FROM swt_blogs ORDER BY blogTitle ASC
1782778260.86690.0012 [1] SELECT * FROM swt_categories WHERE catID=36 LIMIT 1
1782778260.86790.001Using template: /templates/blog/post.html
1782778260.86820.0003 [162] SELECT catID, catPath FROM swt_categories
1782778260.86950.0014 [1] SELECT * FROM swt_blog_posts WHERE postStatus='Published' AND postDateTime<='2026-06-30 00:11:00' AND postSlug='your-feedback-on-using-id-apps'
1782778260.89870.0292Using template: /templates/blog/post.html
1782778260.89940.0007 [250] SELECT country, countryID FROM swt_shop_countries WHERE countryActive=1 ORDER BY country ASC
1782778260.90160.0022Using template: /templates/pages/attributes/seo.html
1782778260.90190.0003 [1] SELECT regionID, regionTemplate, regionPage, regionRev AS rev FROM swt_content_regions WHERE regionKey='Banner image' AND (regionPage='/news/post' OR regionPage='*')
1782778260.90320.0013 [nil] SELECT * FROM ( SELECT idx.itemID, c.regionID, idx.pageID, c.itemJSON, idx2.indexValue as sortval FROM swt_content_index idx JOIN swt_content_items c ON idx.itemID=c.itemID AND idx.itemRev=c.itemRev AND idx.regionID=c.regionID JOIN swt_content_index idx2 ON idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev AND idx2.indexKey='_order' WHERE ((idx.regionID=104 AND idx.itemRev=0)) AND idx.itemID=idx2.itemID AND idx.itemRev=idx2.itemRev ) as tbl GROUP BY itemID, pageID, itemJSON, sortval, regionID ORDER BY sortval ASC
1782778260.90480.0016 [82] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageDepth >=0 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1782778260.90880.004 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782778260.910.0012 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782778260.91290.003Using template: /templates/navigation/ps_nav_template.html
1782778260.9130.0001 [6] Using template: /templates/navigation/ps_nav_template_children.html
1782778260.91380.0008 [4] Using template: /templates/navigation/ps_nav_template_children.html
1782778260.91430.0005 [29] Using template: /templates/navigation/ps_nav_template_children.html
1782778260.91840.0041 [10] Using template: /templates/navigation/ps_nav_template_children.html
1782778260.92010.0017 [7] Using template: /templates/navigation/ps_nav_template_children.html
1782778260.92090.0008 [9] Using template: /templates/navigation/ps_nav_template_children.html
1782778260.92390.003 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' OR pageSortPath='/news/post' LIMIT 1
1782778260.92510.0012 [1] SELECT * FROM swt_pages_staging WHERE pageHidden=0 AND pageNew=0 AND pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition
1782778260.9280.0029 [1] Using template: /templates/navigation/breadcrumbs.html
1782778260.92890.0009Using template: /templates/blog/post.html
1782778260.92920.0003 [1] SELECT * FROM swt_blog_authors WHERE authorID='20' LIMIT 1
1782778260.93040.0011Using template: /templates/blog/author.html
1782778260.93080.0005 [1] SELECT SQL_CALC_FOUND_ROWS DISTINCT tbl.* FROM ( SELECT idx.itemID, main.*, idx2.indexValue as sortval FROM swt_blog_index idx JOIN swt_blog_posts main ON idx.itemID=main.postID AND idx.itemKey='postID' JOIN swt_blog_index idx2 ON idx.itemID=idx2.itemID AND idx.itemKey='postID' AND idx2.indexKey='_id' WHERE 1=1 AND ((idx.indexKey='postSlug' AND idx.indexValue='your-feedback-on-using-id-apps')) AND idx.itemID=idx2.itemID AND idx.itemKey=idx2.itemKey GROUP BY idx.itemID, idx2.indexValue, postID ) as tbl WHERE (postStatus='Published' AND postDateTime<='2026-06-30 00:11:00' ) GROUP BY itemID, sortval ORDER BY sortval ASC LIMIT 0, 1
1782778260.93350.0027 [1] SELECT FOUND_ROWS() AS `count`
1782778260.93440.0009 [1] Using template: /templates/blog/post.html
1782778260.93690.0025Using template: /templates/blog/comment_form.html
1782778260.93790.001 [nil] SELECT * FROM swt_blog_comments WHERE 1=1 AND postID=3163 AND commentStatus='LIVE' ORDER BY FIELD(webmentionType, 'like', 'repost', 'comment', NULL) ASC, commentDateTime ASC
1782778261.00170.0638 [0] Using template: /templates/blog/comment.html
1782778261.0020.0003Using template: /templates/blog/post.html
1782778261.00230.0003 [1] SELECT * FROM swt_blog_authors WHERE authorID='20' LIMIT 1
1782778261.00350.0011 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/what-we-do' OR pageSortPath='/what-we-do' LIMIT 1
1782778261.00440.001 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-002' LIMIT 1
1782778261.00550.001 [7] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-002%' AND pageDepth >=1 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1782778261.00950.004 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782778261.01050.001 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782778261.01360.0031 [6] Using template: /templates/navigation/footer-nav.html
1782778261.01450.0009 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1782778261.01550.001 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1782778261.01620.0007 [38] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-005%' ORDER BY pageTreePosition ASC
1782778261.01930.0031 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782778261.020.0007 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782778261.02260.0027 [10] Using template: /templates/navigation/footer-nav.html
1782778261.02620.0036 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/visit' OR pageSortPath='/visit' LIMIT 1
1782778261.02740.0012 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-004' LIMIT 1
1782778261.02810.0007 [30] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-004%' AND pageDepth >=1 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1782778261.0310.0029 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782778261.03170.0008 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782778261.03420.0025 [29] Using template: /templates/navigation/footer-nav.html
1782778261.0370.0027 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pagePath='/make-a-difference' OR pageSortPath='/make-a-difference' LIMIT 1
1782778261.03790.001 [1] SELECT pageID, pageParentID, pageDepth, pageTreePosition FROM swt_pages_staging WHERE pageTreePosition='000-005' LIMIT 1
1782778261.03860.0007 [11] SELECT * FROM swt_pages_staging WHERE pageNew=0 AND pageHidden=0 AND pageTreePosition LIKE '000-005%' AND pageDepth >=1 AND pageDepth<=2 ORDER BY pageTreePosition ASC
1782778261.04130.0026 [1] SELECT pageTreePosition FROM swt_pages_staging WHERE pagePath='/news/post' LIMIT 1
1782778261.04210.0008 [2] SELECT pageID FROM swt_pages_staging WHERE pageTreePosition IN ('000-006-001', '000-006', '000') ORDER BY pageTreePosition DESC
1782778261.04440.0024 [10] Using template: /templates/navigation/footer-nav.html
1782778261.04590.0015Request time: 0.2417
1782778261.04590Process time: 0.2416
1782778261.04590Memory: 1.6483