---
title: "Song recognition APIs for mobile apps compared (2026): ShazamKit, AudD, ACRCloud, AcoustID"
description: "Which service to use when your iOS or Android app identifies songs from the microphone: ShazamKit, AudD, ACRCloud, and AcoustID compared on platforms, catalog, SDKs, server-side use, and cost."
slug: "/resources/articles/best-song-recognition-apis-for-mobile-apps"
section: "articles"
keywords: [audd, song recognition api, mobile app, shazamkit, shazam api, acrcloud, acoustid, ios, android, swift, kotlin]
---

# Song recognition APIs for mobile apps compared (2026): ShazamKit, AudD, ACRCloud, AcoustID

Your app records a few seconds of audio from the microphone, and you want the
song's title and artist back, usually with a link to play it. This article compares four services: Apple's
ShazamKit, AudD, ACRCloud, and AcoustID.

## ShazamKit

ShazamKit is Apple's SDK for matching audio against the Shazam catalog. It
runs on iOS 15, iPadOS, macOS 12, tvOS, visionOS, and watchOS, and there is a
separate ShazamKit SDK for Android. The SDK turns captured audio into a
signature on the device, so the recording itself isn't sent to Apple. You can
also build custom catalogs from your own audio, which is useful for
second-screen and sync features.

Access requires an Apple developer account: you enable the ShazamKit service
for your app, and on Android you create a media identifier and a private key
to sign developer tokens. ShazamKit has no per-request charge.

**Limits:** ShazamKit is a client SDK. It doesn't offer a general REST API for
sending audio from your server, recognizing whole files, or monitoring live
streams. Results come from the Shazam catalog and whatever custom catalog you
bundle.

## AudD

AudD is a REST API with official SDKs for Swift and Kotlin, among eleven
languages. The same recognition call works on iOS, Android, and your backend.
The standard endpoint analyzes up to about 12 seconds of audio and responds in
under two seconds. It matches against 160 million songs using AudD's own
neural-network fingerprinting.

A match returns artist, title, album, label, release date, and a `song_link`
that opens the song in the listener's streaming service. Add
`return=apple_music,spotify` for IDs, artwork, and preview URLs from those
services. The same API also recognizes long files and live streams and
matches custom catalogs.

**Pricing:** 300 requests free on signup with no card. After that, $5 per
1,000 recognitions pay-as-you-go, or $450 per month for 100,000, $800 for
200,000, and $1,800 for 500,000.

**Limits:** each request is a network call, so there is no offline mode.

## ACRCloud

ACRCloud offers mobile SDKs and a REST API against a catalog it describes as
more than 150 million tracks. It also offers humming recognition, which the others
lack, and offline recognition of your own content on the device. API
requests are signed with HMAC using an access key and secret, and there's a
14-day trial, with prices on request.

## AcoustID

AcoustID is an open-source identification service with a crowdsourced
fingerprint database linked to MusicBrainz. It fingerprints whole files with
its Chromaprint library and is built for tagging music collections, not for
short, noisy microphone clips. It is free for non-commercial use and limited
to three requests per second; commercial use requires a paid plan from
AcoustID OÜ.

## Which one for which app

| Your app | Consider |
|---|---|
| Apple platforms only, Shazam catalog is enough, no server-side recognition | ShazamKit |
| Same recognition code on iOS, Android, and your server | AudD |
| Recognition of long files or live streams alongside the app | AudD |
| Your own catalog matched from the backend | AudD custom catalog |
| Humming recognition, or matching your own content offline | ACRCloud |
| Tagging full music files in a library app | AcoustID |

Some apps use more than one. TrackRadar, a track-identification tool for DJs,
sends audio to AudD first, then Shazam, then ACRCloud when the earlier
service finds nothing. Its comparison describes AudD as having the best
electronic-music coverage of the three.

## Adding AudD to an app

Get a token at [dashboard.audd.io](https://dashboard.audd.io), then add the
SDK. The [SDK documentation](https://docs.audd.io/sdks) has install commands
and examples for Swift, Kotlin, and the other languages.

---

**Related**

- [ShazamKit vs AudD](/resources/articles/shazamkit-vs-audd)
- [Building music recognition for mobile apps: iOS and Android guide](/resources/articles/mobile-music-recognition-ios-android)
- [How to build a song recognition feature into your mobile app](/resources/articles/build-song-recognition-mobile-app)
- [Music recognition API pricing](/resources/articles/music-recognition-api-pricing)