Build your own Shazam.
A complete AI build prompt for an iOS audio recognition app with a permitted custom ShazamKit catalog and actual match history. Your own code, identity, and workflow.
What your Shazam-inspired app will do
Build an original native iOS audio recognition app called Soundtrace, inspired by Shazam. It is for recognizing a small collection of original or licensed recordings through the device microphone. The main journey is tapping listen, matching a genuine audio signature against a custom catalog, and viewing a truthful match with locally saved history. Deliver a SwiftUI/Xcode project using ShazamKit; a random song result after a timer is not recognition.
- Permitted catalog: create a small ShazamKit custom catalog from full-length original or licensed reference recordings, attach stable IDs and metadata, and bundle the generated signatures. Include a documented reproducible catalog-building step and provenance for every reference recording.
- Listen and match: ask for microphone permission in context, capture audio using supported formats, and feed contiguous buffers/timestamps to a genuine ShazamKit session. Use a bounded recognition window, offer cancel, and stop all microphone capture when the session ends.
- Result behavior: show only metadata returned by an actual catalog match, including a supported match offset if available. Present an honest no-match for outside-catalog audio or silence and an actionable error for unsupported audio/session failure.
- History: save successful recognition events once per listening session, reopen their metadata, favorite a reference, and delete entries. Keep repeated detections during one session from flooding the history; listening again creates a distinct event.
- Offline controls: match the bundled custom catalog locally and browse permitted reference metadata offline. Provide a native share action for result text without sharing raw captured audio. Show a small catalog guide explaining its bounded coverage and how to add owned recordings.
Is a DIY Shazam alternative right for you?
A Shazam-inspired app becomes a realistic project when official ShazamKit handles signature matching. A bundled custom catalog provides a verifiable starting point without pretending to cover all commercial music.
A useful first project: A bounded recognition tool for a creator’s own recordings, educational audio, or properly licensed media.
Start with a smaller version
Build signatures for two permitted recordings, play them from another device, and verify correct matches plus silence and unrelated-audio failures.
Know the tradeoffs
Catalog provenance, actual acoustic matching, microphone cleanup, and no-match handling are essential. Full public-catalog recognition has separate configuration requirements, and humming, lyrics, background listening, and copied audio are excluded.
Understand the build-vs-buy tradeoffsInside the build brief
- Product & audience
- Design
- Features
- Tech stack
- Data & behavior
- Originality & asset guidance
- Delivery & verification
No account required.Official Shazam website
Building your own Shazam: useful answers
Is this a ready-to-use Shazam alternative?
This page provides a customizable build brief for an iOS audio recognition app with a permitted custom ShazamKit catalog and actual match history. It is not a hosted app. Your AI coding agent implements the software; you then need to test, run, and maintain it.
Can I customize the Shazam clone prompt?
Yes. Choose Product & audience, Design, Features, Tech stack, or Data & behavior in the editor. Save and copy the complete assembled prompt, or download it as Markdown. Edits are saved in this browser.
What does the starting version leave out?
Play two permitted reference clips from another device and verify the correct catalog entries, then try an unrelated clip, silence, and noisy audio. Test microphone denial/revocation, a call interruption, cancel/restart races, corrupt catalog loading, offline matching, and deletion after relaunch. Build in Xcode and verify real acoustic matching on an iPhone when available; state unavailable device checks. Exclude guessed song matches, copied commercial audio, full-catalog claims, humming recognition, lyrics scraping, background listening, and music-service account actions.
Original software. Familiar inspiration.
Use your own brand, code, layout, and assets. Clone4.me is independent and is not affiliated with Shazam. Read our approach.
Curated by Clone4.me · AI-assisted build briefs · Scope reviewed October 14, 2026
More mobile apps to build
Build a native language practice app with short lessons, instant feedback, review queues, and offline progress.
Build an Android activity recorder with GPS tracks, pause/resume, distance summaries, and GPX exports.
Build an Android food diary with a personal food catalog, serving calculations, meals, and daily summaries.
The complete Shazam clone prompt
# Build an original app inspired by Shazam
You are an experienced mobile product designer and mobile engineer. Build a working, polished MVP from the brief below. Implement the core journeys end to end; a static mockup is not sufficient. Inspect the current environment, make sensible implementation decisions, and get started. Ask a question only if a missing answer genuinely blocks implementation.
Starting platform: iOS. Explicit customized Product & audience and Tech stack requirements take precedence over this starting target.
## Product & audience
Build an original native iOS audio recognition app called Soundtrace, inspired by Shazam. It is for recognizing a small collection of original or licensed recordings through the device microphone. The main journey is tapping listen, matching a genuine audio signature against a custom catalog, and viewing a truthful match with locally saved history. Deliver a SwiftUI/Xcode project using ShazamKit; a random song result after a timer is not recognition.
## Design
Use an original large listen button, a clear microphone-active indicator, short state labels, and an accessible result sheet with title/source metadata. Show listening, match, no-match, canceled, and failure states distinctly. Provide VoiceOver announcements without constant animation noise, respect reduced motion, and include a catalog browser so the app remains informative when microphone permission is denied.
## Features
1. Permitted catalog: create a small ShazamKit custom catalog from full-length original or licensed reference recordings, attach stable IDs and metadata, and bundle the generated signatures. Include a documented reproducible catalog-building step and provenance for every reference recording.
2. Listen and match: ask for microphone permission in context, capture audio using supported formats, and feed contiguous buffers/timestamps to a genuine ShazamKit session. Use a bounded recognition window, offer cancel, and stop all microphone capture when the session ends.
3. Result behavior: show only metadata returned by an actual catalog match, including a supported match offset if available. Present an honest no-match for outside-catalog audio or silence and an actionable error for unsupported audio/session failure.
4. History: save successful recognition events once per listening session, reopen their metadata, favorite a reference, and delete entries. Keep repeated detections during one session from flooding the history; listening again creates a distinct event.
5. Offline controls: match the bundled custom catalog locally and browse permitted reference metadata offline. Provide a native share action for result text without sharing raw captured audio. Show a small catalog guide explaining its bounded coverage and how to add owned recordings.
## Tech stack
Use Swift, SwiftUI, ShazamKit, AVFoundation/AVAudioEngine, and a suitable local persistent store. Include an Xcode project with microphone usage description and supported audio-session configuration. Follow current official custom-catalog examples and use the selected SDK’s real APIs. Keep catalog building separate from live matching and verify catalog serialization. Do not substitute a WebView or imply full Shazam music-catalog access; public-catalog recognition is a later configured integration with its own requirements.
## Data & behavior
ReferenceAudio {id, title, creator, license, sourceFile, metadata}; CatalogManifest {version, referenceIds, hash}; RecognitionSession {id, startedAt, state}; RecognitionEvent {sessionId, referenceId, matchedAt, offsetSeconds}; Favorite. Persist only successful events and app-owned metadata locally; microphone buffers are transient and are not retained or uploaded. Cancel obsolete callbacks using a session token so a match from a previous canceled session cannot populate a newer result.
Acceptance checks and scope:
Play two permitted reference clips from another device and verify the correct catalog entries, then try an unrelated clip, silence, and noisy audio. Test microphone denial/revocation, a call interruption, cancel/restart races, corrupt catalog loading, offline matching, and deletion after relaunch. Build in Xcode and verify real acoustic matching on an iPhone when available; state unavailable device checks. Exclude guessed song matches, copied commercial audio, full-catalog claims, humming recognition, lyrics scraping, background listening, and music-service account actions.
## Originality and assets
The named product is a reference for general workflows only. Use an original product name, visual identity, wording, layout, and assets. Do not copy proprietary code, branded logos, distinctive screens, private APIs, paid templates, or protected media. Use original or appropriately licensed sample data and assets. Build from this brief rather than scraping the reference service. Do not imply affiliation with the referenced company.
## Implementation quality
- Make every visible control work, with clear loading, success, empty, validation, and failure states. Remove controls for unimplemented features.
- Support the target platform and responsive or resizable layouts where appropriate. Use platform-appropriate accessibility semantics, labels, keyboard operation, visible focus, sufficient contrast, and reduced-motion preferences. Provide alternatives for drag-only interactions.
- Validate inputs at the relevant boundary. Treat imported or user-generated content as untrusted; render it safely. Confirm destructive actions or offer undo.
- Keep state changes reliable across navigation and reloads. Never silently lose edits. Handle persistence and network errors with an actionable message.
- Keep the scope realistic. Prioritize the complete primary journey. If a custom Features section differs from the baseline, update the data model, design, and acceptance checks to match it; explicit custom requirements take precedence over baseline assumptions.
- Provide realistic original sample content and a useful empty state. Keep sample data clearly separate from user-created data.
## Delivery and verification
1. Inspect the repository and outline the implementation in a few sentences.
2. Implement the app and connect its actual data flow. Continue until the primary journey works.
3. Run appropriate checks and test the acceptance cases above on the target platform. Verify responsive layouts and keyboard navigation when browser tools are available. For native projects, build with the available SDK and test an emulator or device when possible; report any missing native verification honestly. For games, verify the rules and gameplay loop, not only the menus.
4. Fix observed failures, then provide the runnable result, setup/run instructions, a brief explanation of what is implemented, and any specific configuration or verification limits.
This is a focused MVP. Do not add billing, AI services, or unrelated features unless explicitly requested in the brief. Start building now.
Change just what matters. Customize a section and keep the rest of the brief included.