Apple Music Scraper
Pricing
from $1.40 / 1,000 results
Apple Music Scraper
Search Apple Music by link or keyword and get artists, albums, songs, playlists, stations, music videos and radio episodes, one record per search. Names, links, artwork, track counts, durations and preview links as JSON. Bulk input, any country, no login needed.
Pricing
from $1.40 / 1,000 results
Rating
0.0
(0)
Developer
Insights Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 hours ago
Last modified
Categories
Security
Limited permissionsShare
🎧 Apple Music Scraper: what is it and who is it for?
Apple Music Scraper helps music marketers, playlist curators, A&R teams and data teams do music market research and build a music catalog database from Apple Music search results. Enter artist names, song titles or Apple Music links, click Start, and get the artists, albums, songs, playlists, stations, music videos and radio episodes Apple Music shows for each search, as structured JSON with no Apple login.
The $5 monthly credit on the Apify Free plan pays for result charges and platform usage, and Free-plan runs work the same as paid runs.
Apple Music Scraper is an unofficial tool. It is not made by, affiliated with or endorsed by Apple. It reads the public Apple Music search results that anyone can see in a browser.
- 📈 Music market research: see what Apple Music returns for a genre, mood or keyword, in one storefront or several, for music industry market research across countries.
- 🎤 Artist research and A&R research: list the artists, albums, songs and music videos that match a name or a scene keyword, with links and artwork.
- 📃 Playlist research: find the Apple Music playlists and stations that match a keyword, with their IDs and links.
- 🗂️ Catalog building: fill a song metadata database or a music video database with Apple Music IDs, links, artwork, track counts, durations and explicit flags.
- 🆔 ID and artwork lookup: turn a list of names into Apple Music artist IDs, song IDs, album IDs and 1200x1200 artwork links in one run.
- 📅 Music trend analysis: run the same searches on a schedule and compare your own runs to see which hits appear in or drop out of the search results. The Actor keeps no history; each run is one snapshot.
What can Apple Music Scraper do?
- 🔍 Bulk search: many search terms and Apple Music links in one run, one record per search.
- 🔗 Link input: search links are used as they are; artist, album, song, playlist, station, music video and episode links are searched by the name in the link. You get the search hits for that name, not the contents of the linked page.
- 🎯 Seven result types: collect all of them, or just one (for example only songs or only playlists).
- 📍 181 storefront countries: a storefront is the Apple Music catalog of one country. Pick it from the country list in the Console; links keep their own storefront.
- ♻️ No duplicate searches: the same term in the same storefront is searched once (case-insensitive).
- ⚡ Live results: each search is saved to the dataset as soon as it is ready, with separate Output tables per type.
- 🛑 Cost control: the run stops cleanly when your maximum charge limit is reached and keeps what it saved.
- 🔐 No account needed: no Apple account, login or cookies.
This Apple Music search scraper runs on the Apify platform, so you also get the API, schedules, run monitoring, webhooks and integrations with Make, Zapier, Google Sheets and more.
📦 Apple Music Scraper data: what can you extract?
Every search gives one record of Apple Music data, with the hits grouped into lists by type. The field names below are the exact names in the dataset.
| List | Fields for each hit |
|---|---|
🎤 Artists (artists) | artistId, displayName, url, artworkUrl |
💿 Albums (albums) | albumId, title, artistName, url, trackCount, artworkUrl, explicit |
🎵 Songs (songs) | trackId, title, artistName, url, durationMs, artworkUrl, explicit, previewUrl |
📃 Playlists (playlists) | playlistId, title, url, artworkUrl |
📻 Stations (stations) | stationId, title, url, artworkUrl |
🎬 Music videos (musicVideos) | musicVideoId, title, artistName, url, artworkUrl, explicit |
🎙️ Radio episodes (radioEpisodes) | radioEpisodeId, title, artistName, url, artworkUrl, explicit |
| 📊 Record fields | query (the search text), type (the result type you asked for), totalResults (hits across all lists) |
A few details about this Apple Music metadata:
- 🖼️
artworkUrlis a 1200x1200 JPG image link, so the Actor doubles as an Apple Music artwork extractor for artists, albums, songs, playlists, stations, music videos and radio episodes. - ⏱️
durationMsis the song length in milliseconds. - 🔞
explicitistrueorfalseand exists for albums, songs, music videos and radio episodes. It reflects the Apple Music explicit tag of that hit. - ▶️
previewUrlis the short song preview link that Apple provides. The Actor does not download audio. - 📂 Apple Music music videos and Apple Music radio stations have their own lists, so you can keep them apart from songs.
Note: fields that Apple Music does not provide for a hit are
null. With Result type set to one type, the record contains only that one list. The other lists are left out, not empty.
What data can't Apple Music Scraper extract?
- ❌ Full album tracklists. For those, use Apple Music Album Scraper, which returns the full tracklist with track numbers, durations and explicit flags.
- ❌ Lyrics, release dates, record labels, genres, ISRC or UPC codes.
- ❌ Charts, rankings, play counts, popularity or follower counts.
- ❌ Playlist track lists or playlist curator details.
- ❌ Artist bios or full artist pages. Artist links are searched by name.
- ❌ History. Each run is a snapshot of what the search returns at that moment.
🚀 How to scrape Apple Music search results
Apple Music Scraper is designed for an easy start, even if you have never used a web scraper before.
- Create a free Apify account using your email.
- Open Apple Music Scraper.
- The form opens with two examples: the search term
adeleand a search link for "taylor swift". Each example is a separate search and is charged as one result if you keep it. Keep them for a first test, or replace them with your own artist names, song titles or phrases in Search terms and your own link in Apple Music links. Apple Music links is a required field, so keep at least one link there. - Click Start and wait for the run to finish. Results appear in the Output tab while the run is going.
- Download your data in JSON, CSV, Excel, XML or HTML.
That is how to scrape Apple Music without writing code. With the examples and the default settings, you get 2 records (one per search), each with up to 20 hits for each of the seven types. For a plain song list, set Result type to song: each term then becomes one Apple Music song search.
💲 How much does it cost to scrape Apple Music?
Apple Music Scraper uses pay-per-event pricing: you pay for what the run does (each saved result, plus a small start fee), not a monthly rental. Your bill has three parts:
- Results: one charge for each search record saved to the dataset. One record holds all hits of one search term or link, so a search with 140 hits is still one result.
- Start fee: $0.00005 per run at the default memory of 1 GB ($0.00005 per GB of run memory).
- Platform usage: the compute the run uses, billed at your Apify plan's own rates.
⚠️ Searches with 0 hits are charged too. A typo or a term with no matches still saves one record (with
totalResults0) and costs one result. Check your terms before a large run.
| Apify plan | Price per result | Price per 1,000 results |
|---|---|---|
| 💲 Free | $0.002 | $2.00 |
| 💲 Starter | $0.0018 | $1.80 |
| 💲 Scale | $0.0016 | $1.60 |
| 💲 Business and higher | $0.0014 | $1.40 |
The plan discount applies to the result price only. The start fee is the same on every plan, and platform usage is billed at your Apify plan's own rates.
Example: 100 searches on the Free plan = 100 x $0.002 = $0.20 in result charges, plus the $0.00005 start fee, plus platform usage. To see what your own searches cost, do a small test run with a few terms and read the cost on the run page.
What is billed:
- ✅ A search that returns hits is saved and charged once.
- ⚠️ A search with 0 hits is also saved (with
totalResults0) and charged once. - ❌ A search that fails (for example, Apple Music does not answer) is not saved and not charged.
- ❌ Links that are skipped (see Apple Music links) are not charged.
To cap your spending, set a maximum charge limit before you start:
- Open the Actor in the Console and fill in the input.
- Open the run options for this run.
- Enter an amount in the maximum charge limit field.
- Click Start.
The limit caps the result charges; platform usage comes on top. When the limit is reached, the run stops and keeps the results saved so far. See the pricing tab for the live prices.
Is scraping Apple Music free?
You can start for free. The Apify Free plan gives you $5 in monthly credit, which pays for result charges and platform usage. There are no extra caps for Free-plan users.
⬇️ Apple Music Scraper input
Fill in Apple Music links (a required field) and, if you like, Search terms. The other settings have defaults, shown in the table.
Settings most people change
| Setting | What it does | Default |
|---|---|---|
🔍 Search terms (queries) | Artist names, song titles, albums or any phrase. One record per term. | Example in the form: adele (charged as one result if you keep it) |
🔗 Apple Music links (urls) | Apple Music links, one per line. Search links are used as they are; artist, album, song, playlist, station, music video and episode links are searched by the name in the link. | Example in the form: a search link for "taylor swift" (charged as one result if you keep it) |
🎯 Result type (type) | all, song, album, artist, playlist, station, music_video or radio_episode. | all |
📍 Storefront country (country) | The storefront, meaning the Apple Music catalog of one country. In the Console, pick the country from the list; through the API, send its 2-letter code, for example us, gb, jp. | us |
🔢 Max hits per type (maxItems) | Hits to collect per type for each search: a number from 1 to 1,000, or 0 for as many as Apple Music returns (at most about 2,000 per type). | 20 |
🌐 Proxy configuration (proxyConfiguration) | Optional. You don't need to change it. | No proxy set |
Here's an example that runs one Apple Music catalog search from a link and one from a search term, for all result types, with up to 20 hits per type:
{"urls": ["https://music.apple.com/us/search?term=taylor%20swift"],"queries": ["adele"],"type": "all","country": "us","maxItems": 20}
See the input tab for the full description of every field.
Apple Music links (urls)
Links are turned into searches. A search link uses its own search term. An artist, album, song, playlist, station, music video or episode link is searched by the readable name in the link. The record then holds the search hits for that name, not the full page.
- ✅ Good:
https://music.apple.com/gb/artist/adele/262836961(searched as "adele" in the UK storefront) - ✅ Good:
https://music.apple.com/us/search?term=taylor%20swift(searched as "taylor swift") - ❌ Bad: a link whose name part is only digits, like
https://music.apple.com/us/album/1989/<album-id>, a link with only an ID and no name, or a link from another site
⚠️ Links without a search term or readable name, links whose name is only digits, and links from other sites are skipped. The log shows a note for each skipped link. Use Search terms for names like "1989".
Apple Music links is a required field, and the Console fills in an example link. Replace it with your own Apple Music link, or keep it; either way it is searched and charged as one result. Through the API, always send urls together with queries. The schema sets no minimum number of links, so urls can be an empty list [] when you only send search terms.
Max hits per type (maxItems)
The limit applies to each type in each search. With Result type all and maxItems 20, one search can hold up to 7 x 20 = 140 hits, and it is still one record and one charge.
- ✅ Good:
20for the top hits of each type - ❌ Bad:
0on a broad term when you only need the top hits (the run takes longer)
⚠️ A number you type can be at most 1,000. Only
0goes higher: it means as many as Apple Music returns, and collection of one type stops at most about 2,000 hits per type. Radio episodes, and in some cases other types, are limited to what the Apple Music search page shows.
Storefront country (country)
The storefront is the Apple Music catalog of one country, so results differ by country. A link that contains its own storefront (like /gb/) uses that one, and Storefront country applies only to search terms and links without a storefront.
- ✅ Good:
gbwith search terms to search the UK storefront - ❌ Bad: expecting
gbto change a link that starts with/us/
Result type (type)
all returns all seven lists (some can be empty). A single type returns only that list, which keeps the record small when you need one kind of hit.
⬆️ Apple Music Scraper output
The run saves one record per search. Open the Output tab to see an Overview table (search, result type, total hits) and one table per type: Artists, Albums, Songs, Playlists, Stations, Music videos and Radio episodes. Each of these tables shows one row per hit.
Each record holds lists (artists, albums, songs and so on), not one flat row. For one row per hit, use the per-type tables in the Output tab, or set Result type to the single type you need. For the complete records with all lists, JSON is the clearest format.
For an Apple Music data export, go to Storage → Datasets, open the run's dataset and click Export. Pick JSON, CSV, Excel, XML or HTML. Run totals (searches saved, total hits, failed and empty searches, charged results, run time) are in the run's key-value store, a small file storage next to the dataset: open Storage → Key-value stores and the record named RUN_SUMMARY.
Records are saved as each search finishes, so their order can differ from your input order.
JSON example
Results for the input example above (the "adele" record). To keep the example short, it shows one hit in three lists and leaves the other lists as []; in a real run each list can hold up to 20 hits and totalResults counts all of them. "..." marks values left out; your values come from Apple Music at run time. The "taylor swift" search gives a second record with the same shape.
{"query": "adele","type": "all","artists": [{"artistId": "262836961","displayName": "Adele","url": "https://music.apple.com/us/artist/adele/262836961","artworkUrl": "https://is1-ssl.mzstatic.com/image/thumb/.../1200x1200bb.jpg"}],"albums": [{"albumId": "...","title": "21","artistName": "Adele","url": "https://music.apple.com/us/album/...","trackCount": 11,"artworkUrl": "https://is1-ssl.mzstatic.com/image/thumb/.../1200x1200bb.jpg","explicit": false}],"songs": [{"trackId": "...","title": "Someone Like You","artistName": "Adele","url": "https://music.apple.com/us/song/...","durationMs": 285000,"artworkUrl": "https://is1-ssl.mzstatic.com/image/thumb/.../1200x1200bb.jpg","explicit": false,"previewUrl": "..."}],"playlists": [],"stations": [],"musicVideos": [],"radioEpisodes": [],"totalResults": 3}
Each hit carries its Apple Music song ID (trackId), album ID (albumId) or Apple Music artist ID (artistId), so you can join the Apple Music JSON with your own tables.
💡 Tips and advanced usage
How many results can you scrape with Apple Music Scraper?
Each search returns up to Max hits per type hits for each type (a number up to 1,000). Only when you set it to 0 can a type go higher, to at most about 2,000 hits. How many hits you really get depends on the term and the storefront: Apple Music decides which hits a search returns and in which order, and that changes over time. A quick test run shows what your terms return.
How to get faster or cheaper results
- 🎯 Set Result type to the one type you need. To run an Apple Music search artist by artist, put one name per line in Search terms and choose
artist. - 🔢 Keep Max hits per type at 20 or lower when you only need the top hits. The result price is per search, but fewer hits mean a shorter run and less platform usage.
- ♻️ Put all your terms into one run instead of many small runs. Duplicates are removed for you.
- 💿 For complete album details with tracklists, send the album links from this Actor's output to Apple Music Album Scraper.
Run it on a schedule
A weekly playlist check for a genre is a simple recurring workflow:
- Set Search terms to your genre or mood words (for example
lofi,k-pop), Result type toplaylistand Max hits per type to50. - Click Save as new task and give it a name such as "Weekly playlist check".
- In the task, add an Apify schedule, for example every Monday morning.
- After each run, put the Playlists table of this week and of last week into two sheets of a spreadsheet, and look up each
playlistIdof this week in last week's list (for example with a lookup formula). IDs without a match are new in the search results; IDs only in last week's list have dropped out.
The Actor does not compare runs by itself; each run is a fresh snapshot. Music trend analysis here means comparing your own scheduled runs: what the search returned on different dates.
Known issues
- ⚠️ If Apple Music changes its site, some lists can come back smaller than usual. The log then says that some results may be incomplete.
- ⚠️ Search results change over time and by storefront, so two runs of the same input can differ.
- ⚠️ If nothing at all could be saved, the run ends as failed with a status message.
If something goes wrong
- ❌ Run failed with "Input problem": check that Apple Music links has a valid entry (or, through the API, that
urlsis sent), and that Max hits per type is 0 or more. Then start the run again. - ❌ Run failed with "Apple Music could not be reached": wait a few minutes and start the run again.
- ⚠️ A search has 0 hits: check the spelling, try a broader term or another storefront. Remember that 0-hit searches are charged.
- ⚠️ A link was skipped: the log shows a note. Use a link with a readable name, or type the name into Search terms.
- 🛑 The run stopped at the maximum charge limit: the results saved so far are kept. Raise the limit and run the remaining terms.
- 📧 Still stuck? Open an issue on the Issues tab and include the link to your run.
🔌 Integrations and Apple Music API
Can I use Apple Music Scraper as an API?
Yes. The Apify API gives you an unofficial Apple Music API for search data (not an Apple product): start runs, schedule them and fetch the results. Use the apify-client NPM package for Node.js or the apify-client PyPI package for Python. The API tab has ready-to-use code. You don't need Apple Music catalog API access or an Apple developer account.
Teams that need an Apple Music data API or a general music data API for catalog jobs can call the Actor from any language. The API accepts only these input names: urls (always send it; [] is allowed), queries, type, country, maxItems and proxyConfiguration (optional; you can leave it out). Any other field name stops the run with an input problem.
Apple Music API Python example
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("insights_data/apple-music-scraper").call(run_input={"urls": ["https://music.apple.com/us/search?term=taylor%20swift"],"queries": ["adele"],"type": "all","country": "us","maxItems": 20,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["query"], item["totalResults"])
Can I integrate Apple Music Scraper with other apps?
Yes. Connect it with almost any cloud service through Apify integrations: Make, Zapier, n8n, Slack, Google Sheets, Google Drive, Airbyte and more. Three workflows that fit this Actor:
- 📗 Google Sheets for Apple Music data analysis: run the scheduled task above and send each run's Songs or Playlists table to a Google Sheet. Filter by
artistNameorexplicit, or count the newtrackIdvalues each week. - 💬 Slack alert when a run finishes: add a webhook (an automatic message Apify sends to another app when a run finishes) or a Make/Zapier scenario that posts the run's search and hit counts to a Slack channel, with a link to the dataset.
- 🪝 Your own pipeline: a webhook on "run succeeded" can trigger your script to load the new records into your music catalog database.
Can I use Apple Music Scraper with AI agents (MCP)?
Yes. MCP (Model Context Protocol) is a standard way for AI assistants to use outside tools. Connect Apple Music Scraper to Claude and other AI assistants through the Apify MCP server. Open the MCP tab for setup steps. An agent can then search Apple Music for you and read the results as JSON.
🧩 Other Apple Music scrapers and music data tools
- 💿 Apple Music Album Scraper: Apple Music albums from links or album IDs in any storefront, with title, artists, cover art, release info and the full tracklist.
- 🏷️ TikTok Hashtag Scraper: TikTok hashtag videos with captions, views, likes, author stats and the music used in each video.
- 🧭 TikTok Explore Scraper: TikTok Explore videos by topic, with plays, likes, creator stats and sound.
- 🔑 Keyword Search Volume — Bulk Google Metrics (CPC & Trend): Google search volume, CPC and a 12-month trend for keywords, useful next to your music market research.
❓ FAQ
Is it legal to scrape Apple Music?
Collecting publicly available search results is generally legal, but you are responsible for how you use the data. Apple Music Scraper reads public search results only and needs no login. Respect personal data rules (such as GDPR), intellectual property and Apple's terms, and have a legitimate reason for your project. This is not legal advice.
How does Apple Music Scraper work?
It works like a person searching Apple Music in a browser, only faster and in bulk. For each search term, and for each link turned into a search term, it searches the chosen storefront, collects up to Max hits per type hits for each type, groups them into one record and saves it to the dataset right away.
How is Apple Music Scraper different from Apple Music Album Scraper?
Apple Music Scraper searches; Apple Music Album Scraper reads album pages. Use this Actor to find what matches a name or keyword, and the album Actor when you need the full contents of specific albums.
| Feature | Apple Music Scraper | Apple Music Album Scraper |
|---|---|---|
| 🔍 Input | Search terms or Apple Music links (searched by name) | Album links or album IDs |
| 🎯 Result types | Artists, albums, songs, playlists, stations, music videos, radio episodes | Albums |
| 💿 Full album tracklist | ❌ | ✅ with track numbers, durations and explicit flags |
| ℹ️ Release info | ❌ | ✅ |
| 📍 Storefront choice | ✅ | ✅ |
| 🔐 No Apple login | ✅ | ✅ |
How can I find Apple Music artist IDs in bulk?
Put the artist names into Search terms, set Result type to artist and Max hits per type to a small number like 5. That is a simple way to find Apple Music artist IDs for a list of names: each hit has artistId, displayName, url and artworkUrl. Check displayName to pick the right artist when several share a name.
Can I do an Apple Music API search song by song without an Apple developer account?
Yes. You don't need an Apple developer account, an Apple ID or cookies. Put one song title per line in Search terms, set Result type to song, and each song search returns trackId, title, artistName, durationMs, explicit and previewUrl. When you only need search results, it can stand in for an unofficial Apple Music search API.
Is there an Apple Music metadata API for IDs, artwork and durations?
Apple Music Scraper gives you that through the Apify API. It can serve as an unofficial music metadata API for search hits: IDs, titles, artist names, links, 1200x1200 artwork, track counts, durations and explicit flags. It does not return release dates, labels, genres, ISRC or UPC codes.
Can I use it as an Apple Music album artwork finder?
Yes. Set Result type to album and search the album or artist name. Every album hit has an artworkUrl that links a 1200x1200 JPG. That makes it a simple Apple Music album artwork finder for a whole list of titles.
Is this an Apple Music extractor for songs too?
Yes. As an Apple Music song extractor it returns the songs list for every search, with trackId, title, artistName, url, durationMs, artworkUrl, explicit and previewUrl. It extracts search hits; it does not download audio.
Why am I getting fewer results than expected?
- Check Max hits per type. The default is 20 per type.
- Check Result type. A single type returns only that list.
- Check the storefront. Results differ by storefront, and a link's own storefront wins over Storefront country.
- Check the log for skipped links (no readable name, a name made only of digits, or another site).
- Apple Music may simply return fewer hits for that term. Try a broader term.
Can I use the data for playlist research or A&R research?
Yes, as long as you work with search results. You can see which playlists and stations match a keyword, and which artists, albums and music videos match a name or scene. The Actor does not give play counts, chart positions, followers or popularity numbers, so pair it with your own metrics for that part.
📧 Support and feedback
Found a bug or have a feature request? Please create an issue on the Issues tab.
Need a custom solution, more fields or a different music source? Contact us at hello.insights.data@gmail.com.
Built and maintained by insights_data.