SoundCloud Tracks, Artists & Playlists Scraper avatar

SoundCloud Tracks, Artists & Playlists Scraper

Pricing

from $0.99 / 1,000 results

Go to Apify Store
SoundCloud Tracks, Artists & Playlists Scraper

SoundCloud Tracks, Artists & Playlists Scraper

Scrape SoundCloud tracks, artists, playlists, and charts with full play, like, and repost stats. Resolve any URL, search by keyword, pull an artist's uploads, expand playlists into per-track detail, or grab a genre's trending / top chart. No login, no API key.

Pricing

from $0.99 / 1,000 results

Rating

0.0

(0)

Developer

Farhan Febrian Nauval

Farhan Febrian Nauval

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Categories

Share

Extract SoundCloud tracks, artists, playlists, and charts — with full play, like, repost, and comment counts — as clean JSON. Resolve any SoundCloud link, search by keyword, pull an artist's uploads, expand a playlist into per-track detail, or grab a genre's trending / top chart.

Why use this actor

  • No account, no login, no API key required.
  • Real engagement numbers — play count, likes, reposts, comments, download count, plus follower / following / track totals for artists.
  • Five ways in — resolve a URL, keyword search, artist profile + tracks, full playlist expansion, or genre charts.
  • Playlist expansion — turn one playlist link into a row per track, each with full stats and the artist behind it.
  • Stable JSON output ready for spreadsheets, databases, dashboards, or data pipelines.
  • Automatic retries, runs on Apify's schedule, and exports to JSON / CSV / Excel — no scrapers, browsers, or blocks to babysit.

How it works

  1. Pick a mode (resolve, search, artist, playlist, or charts).
  2. Give it the matching input — a list of SoundCloud URLs, a search keyword, or a chart genre.
  3. The actor pulls the matching tracks, artists, and playlists, each with full public stats.
  4. Every result is pushed to your dataset as one JSON row, ready to export.

You don't manage any scrapers, browsers, or rate limits — just run it.

Input

Resolve mode — look up any SoundCloud URLs

{
"mode": "resolve",
"urls": [
"https://soundcloud.com/eldjkb/get-lucky-original-version",
"https://soundcloud.com/eldjkb"
],
"maxItems": 200,
"maxItemsPerSource": 200,
"proxyConfiguration": { "useApifyProxy": false }
}

Search mode — find tracks, artists, or playlists by keyword

{
"mode": "search",
"query": "daft punk",
"searchType": "tracks",
"maxItems": 200,
"maxItemsPerSource": 200
}

Artist mode — an artist profile plus their uploads

{ "mode": "artist", "urls": ["https://soundcloud.com/eldjkb"], "maxItemsPerSource": 200 }

Playlist mode — a playlist / album expanded into its tracks

{
"mode": "playlist",
"urls": ["https://soundcloud.com/soaverecords/sets/summer-lounge-2025-chill-vibes"],
"hydratePlaylistTracks": true
}
{ "mode": "charts", "genre": "all-music", "chartType": "trending", "maxItems": 200 }
FieldTypeDescription
modestringresolve, search, artist, playlist, or charts.
urlsarraySoundCloud URLs. Used by resolve (any track/artist/playlist), artist (artist profiles), and playlist (playlists/albums).
querystringKeyword to search for (search mode).
searchTypestringtracks, users (artists), or playlists (search mode).
genrestringGenre slug for charts, e.g. all-music, hiphoprap, house, pop (charts mode).
chartTypestringtrending (hot right now) or top (charts mode).
hydratePlaylistTracksbooleanIf true, return every track in a playlist with full detail. Default true.
maxItemsintegerMax rows for the whole run (0 = no limit). Default 200.
maxItemsPerSourceintegerMax rows per URL / query / chart (0 = no limit). Default 200.
proxyConfigurationobjectOptional. Off by default; SoundCloud data is public.

Output

Every row carries a small header — _source (which mode produced it), _scrapedAt, _input (the URL/query it came from), and _entityKind (track, user, or playlist) — followed by the full SoundCloud object.

Track (resolve / search / artist / playlist / charts)

{
"_source": "resolve",
"_scrapedAt": "2026-07-10T20:05:58Z",
"_input": "https://soundcloud.com/eldjkb/get-lucky-original-version",
"_entityKind": "track",
"id": 88335161,
"title": "Get Lucky [Original Version] - Daft Punk",
"permalink_url": "https://soundcloud.com/eldjkb/get-lucky-original-version",
"duration": 246381,
"full_duration": 246382,
"genre": "Disco Electronic",
"tag_list": "leaked original version daft punk get lucky 2013 pharrell williams",
"created_at": "2013-04-17T22:05:25Z",
"display_date": "2013-04-17T22:05:25Z",
"playback_count": 20625528,
"likes_count": 300958,
"reposts_count": 3313,
"comment_count": 4989,
"download_count": 0,
"license": "all-rights-reserved",
"urn": "soundcloud:tracks:88335161",
"waveform_url": "https://wave.sndcdn.com/XBV0hffTtBI4_m.json",
"artwork_url": "https://i1.sndcdn.com/artworks-000045765973-c2x8ko-large.jpg",
"user": { "id": 8882898, "username": "DJ KB", "followers_count": 6487, "verified": true, "… ": "… more" }
}

Each track row also includes the full artist object under user. In charts mode a _chartScore field is added (the chart-ranking score, e.g. 0.857).

Artist / user (resolve / artist / search users)

{
"_source": "resolve",
"_input": "https://soundcloud.com/eldjkb",
"_entityKind": "user",
"id": 8882898,
"username": "DJ KB",
"permalink_url": "https://soundcloud.com/eldjkb",
"followers_count": 6487,
"followings_count": 69,
"track_count": 69,
"playlist_count": 7,
"likes_count": 108,
"verified": true,
"city": "",
"country_code": null,
"description": "Es un colombiano, DJ y productor, desde Medellín, Colombia. A los dieciséis años comenzó a publicar…",
"avatar_url": "https://i1.sndcdn.com/avatars-000394976541-fi0tut-large.jpg"
}

Playlist / album (resolve / playlist / search playlists)

{
"_source": "playlist",
"_input": "https://soundcloud.com/soaverecords/sets/summer-lounge-2025-chill-vibes",
"_entityKind": "playlist",
"id": 1941279431,
"title": "Ibiza Summer Mix 2026 🍓 Best Of Tropical Deep House Music Chill Out Mix",
"permalink_url": "https://soundcloud.com/soaverecords/sets/summer-lounge-2025-chill-vibes",
"track_count": 300,
"duration": 46954156,
"genre": "",
"likes_count": 14273,
"reposts_count": 223,
"is_album": false,
"set_type": ""
}

With hydratePlaylistTracks on, the playlist row is followed by one full track row per song (_source: "playlist-track"), for example:

{
"_source": "playlist-track",
"_entityKind": "track",
"id": 1649402727,
"title": "Stumblin' In",
"permalink_url": "https://soundcloud.com/cyrilriley/stumblin-in-cyril-remix",
"playback_count": 4465477,
"likes_count": 78203,
"genre": "Dance"
}

Chart track (charts mode)

{
"_source": "charts-trending",
"_input": "charts:trending:all-music",
"_entityKind": "track",
"_chartScore": 0.857,
"id": 2320209185,
"title": "GOOSE COAT",
"permalink_url": "https://soundcloud.com/user-10135919/surf7-goose-coat",
"genre": "Hip Hop/Rap",
"playback_count": 1269220,
"likes_count": 33594,
"reposts_count": 214
}
FieldTypeDescription
_sourcestringWhich mode produced the row (resolve, search, artist-tracks, playlist, playlist-track, charts-trending, …).
_entityKindstringtrack, user, or playlist.
id / urnnumber / stringSoundCloud's numeric id and full resource identifier.
titlestringTrack or playlist title.
usernamestringArtist display name (on artist rows; also nested under user on tracks).
permalink_urlstringPublic SoundCloud link.
playback_countnumberTotal plays (tracks).
likes_count / reposts_count / comment_countnumberEngagement totals.
followers_count / followings_count / track_count / playlist_countnumberArtist totals.
duration / full_durationnumberLength in milliseconds.
genre / tag_liststringGenre label and free-text tags.
created_at / display_date / release_datestringTimestamps.
artwork_url / avatar_url / waveform_urlstringImage and waveform links.
verifiedbooleanWhether the artist is verified.
_chartScorenumberChart-ranking score (charts mode only).

Notes & limits

  • Keyword search returns up to ~200 results per query. For more coverage, use several narrower queries.
  • Artist tracks, playlists, and charts page through everything available up to your maxItems / maxItemsPerSource caps.
  • Playlists can be large (hundreds of tracks). Set maxItemsPerSource to keep runs small, or turn hydratePlaylistTracks off to return just the playlist summary.
  • Some artist fields (like city or country_code) are blank when the artist hasn't set them.
  • SoundCloud data is public, so no proxy is needed; you can still enable Apify Proxy if you prefer.