SoundCloud Scraper avatar

SoundCloud Scraper

Pricing

from $1.05 / 1,000 soundcloud items

Go to Apify Store
SoundCloud Scraper

SoundCloud Scraper

Scrape public SoundCloud tracks, artists, playlists, albums, and comments. Export titles, URLs, engagement counts, artist details, media metadata, and timestamps.

Pricing

from $1.05 / 1,000 soundcloud items

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

🎧 SoundCloud scraper for public music data

SoundCloud Scraper collects public data from SoundCloud tracks, artists, playlists, albums, and comments. Add SoundCloud URLs, profile handles, or search terms, then export clean rows with titles, URLs, artist details, engagement counts, media metadata, source URLs, and scrape timestamps.

Use this SoundCloud scraper for music catalog research, artist discovery, playlist analysis, trend tracking, and data workflows where copying track pages by hand would be slow. The Actor works with public SoundCloud data and does not ask for SoundCloud cookies, login details, or API keys.

For a quick first run, keep the prefilled dnb search target, set Search for to Tracks, and run the Actor. You can raise the result limits once the output shape matches what you need.

✅ What this Actor does

  • Searches SoundCloud for public tracks, artists, playlists, albums, or all supported result types.
  • Accepts SoundCloud URLs, profile handles such as @dnballstars, and plain search terms.
  • Saves one dataset item for each accepted SoundCloud result.
  • Adds track duration, genre, tags, dates, public status, streamable/downloadable flags, and engagement counts when SoundCloud provides them.
  • Adds artist/profile details for track, playlist, and album rows when available.
  • Adds artwork, waveform, and public media transcoding metadata when enabled.
  • Can save public comments as separate rows linked back to the parent track.
  • Stops at your total and per-target result limits.

Unavailable fields are saved as null or empty arrays instead of guessed values, so downstream scripts can tell the difference between missing data and scraped data.

📦 Data you can export

Each output item has a rowType of track, artist, playlist, album, or comment. Common fields include:

  • soundcloudId, urn, title, and url
  • sourceTarget, sourceTargetIndex, and sourceUrl
  • description, createdAt, displayDate, and lastModified
  • durationMs, genre, tags, and license
  • isPublic, isStreamable, isDownloadable, and availabilityStatus
  • engagement with plays, likes, reposts, comments, downloads, or followers when SoundCloud returns them
  • artist profile details
  • media metadata such as artwork, waveform, stream URL metadata, and downloadable status
  • comment details for comment rows
  • scrapedAt

You can open the dataset in Apify, export it as JSON, CSV, Excel, XML, or RSS, call it through the Apify API, schedule runs, or connect it to webhooks and integrations.

🛠️ How to run it

  1. Add one or more SoundCloud targets.
  2. Choose whether search terms should return tracks, artists, playlists, albums, or all supported result types.
  3. Set the total result limit and the limit per target.
  4. Leave comments at 0 if you only need primary SoundCloud results, or increase the comment limit to collect public track comments.
  5. Run the Actor and open the dataset.

Targets can be mixed in one run:

{
"targets": ["dnb", "https://soundcloud.com/dnballstars", "@dnballstars"],
"searchType": "tracks",
"maxItems": 100,
"maxItemsPerTarget": 50,
"maxCommentsPerTrack": 0,
"includeArtistDetails": true,
"includeMediaMetadata": true,
"dedupeResults": true
}

🔎 Input options

targets are the SoundCloud URLs, handles, or search terms to scrape. Use a search term like ambient techno for discovery, a profile URL to collect public profile content, or a handle such as @dnballstars when you already know the artist or label.

searchType controls only plain search terms. Direct SoundCloud URLs and handles are resolved from the target itself.

maxItems is the total number of rows to save across the run. maxItemsPerTarget keeps a single target from using the whole run budget.

maxCommentsPerTrack saves public comments as extra rows. Keep it at 0 when you only need tracks, artists, playlists, or albums.

includeArtistDetails and includeMediaMetadata add richer nested objects when SoundCloud exposes the data publicly.

dedupeResults avoids saving the same SoundCloud item more than once in a run.

📄 Output example

{
"rowType": "track",
"soundcloudId": 123456789,
"title": "Example Track",
"url": "https://soundcloud.com/example/example-track",
"sourceTarget": "dnb",
"sourceTargetIndex": 0,
"sourceUrl": "https://api-v2.soundcloud.com/search/tracks?q=dnb",
"description": "Public track description",
"durationMs": 180000,
"genre": "Drum & Bass",
"tags": ["dnb", "bass"],
"engagement": {
"playbackCount": 12000,
"likesCount": 500,
"repostsCount": 20,
"commentCount": 10,
"downloadCount": null,
"followersCount": null
},
"artist": {
"id": 987654321,
"username": "example-artist",
"displayName": "Example Artist",
"url": "https://soundcloud.com/example-artist"
},
"scrapedAt": "2026-05-24T00:00:00.000Z"
}

The real dataset may include more fields or null values depending on what SoundCloud returns for each item.

💳 Pricing

This Actor uses pay-per-event pricing. You are charged for each saved SoundCloud item, which can be a track, artist, playlist, album, or comment. There is no separate Actor-start charge.

⚠️ Limits and caveats

  • Results depend on what SoundCloud exposes publicly at run time.
  • Private, deleted, blocked, or unavailable SoundCloud targets may return no rows.
  • Some media fields are metadata URLs or stream descriptors, not guaranteed direct downloads.
  • Search ordering is controlled by SoundCloud.
  • The Actor is not affiliated with SoundCloud and is not an official SoundCloud API client.

❓ FAQ

Do I need a SoundCloud account or API key?

No. This Actor works with public SoundCloud data and does not ask for cookies, login details, or an API key.

Can it scrape SoundCloud comments?

Yes. Increase Comments per track to save public track comments as separate rows. Keep it at 0 to collect only primary SoundCloud results.

Can I use it as a SoundCloud API?

Yes, through Apify. You can run the Actor via the Apify API, schedule it, and fetch the dataset from your own scripts or integrations.

Does it download MP3 files?

No. The Actor extracts public SoundCloud data and media metadata. It does not promise direct audio downloads.

📝 Changelog

  • 0.1: Initial release.

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

🔗 Other actors

Made with ❤️ by Maxime Dupré