SoundCloud Scraper | Track Data & Direct Stream Links avatar

SoundCloud Scraper | Track Data & Direct Stream Links

Pricing

from $1.50 / 1,000 results

Go to Apify Store
SoundCloud Scraper | Track Data & Direct Stream Links

SoundCloud Scraper | Track Data & Direct Stream Links

Extract track and artist data from SoundCloud — titles, play counts, genres, stream links and engagement metrics for music analytics and discovery.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Ahmed Jasarevic

Ahmed Jasarevic

Maintained by Community

Actor stats

0

Bookmarked

23

Total users

3

Monthly active users

8 days ago

Last modified

Share

SoundCloud Scraper - Track Data, Artist Metrics and Stream Links

The SoundCloud Scraper resolves public SoundCloud tracks, user profiles, sets and search pages into structured records. It returns the raw public track or user object plus useful fields such as title, artist, genre, duration, play count, likes, reposts, comment count, creation date, artwork and a short-lived direct stream URL for tracks.

Use it for music discovery, artist research, playlist and label analysis, engagement benchmarking and audio metadata pipelines. The Actor obtains a public client ID, resolves each submitted URL through the SoundCloud API, and writes one row per returned object. No SoundCloud login is required.

Main Use Cases for SoundCloud Music Data

  • Music discovery - resolve search results into tracks and artist profiles for genre or keyword research.
  • Artist benchmarking - compare play counts, likes, reposts and comment counts across tracks and artists.
  • Label and catalog research - inspect release metadata, label names, ISRC, UPC and release dates.
  • Playlist and set analysis - collect the tracks returned by a public set or search URL.
  • Audio metadata pipelines - obtain track durations, artwork, waveforms and temporary stream URLs for downstream processing.
  • Trend monitoring - schedule runs to track engagement growth on a defined track or artist list.
  • AI music research - provide an LLM compact track rows with stable IDs and public metrics.

How It Works

SoundCloud tracks and artist pages becoming structured rows with plays, likes, metadata and direct stream links

Provide track, user, set or search URLs in startUrls. For a search URL, the Actor reads the q parameter and calls the public SoundCloud search endpoint. For any other URL, it resolves the page through the SoundCloud resolve endpoint. Search results can contain a mix of tracks, users and playlists, so always inspect kind before processing a row.

For tracks, the Actor keeps the public track object and adds direct_stream_url by resolving the first media transcoding through the public API. The URL is temporary and can expire, so resolve it again for a later download or playback job rather than storing it as a permanent asset link.

The output is intentionally close to the SoundCloud object rather than a heavily normalized schema. Track rows expose title, permalink_url, genre, duration in milliseconds, playback_count, likes_count, reposts_count, comment_count, download_count, created_at, release_date, label_name, license, streamable, user, media and waveform_url. User rows expose follower and track counts, verification, avatar, description and profile URL.

maxItems is shared across all submitted URLs and is checked after each batch. The free tier is capped at 20 saved objects. includeComments is present in the input form but is not applied by the current build; comment data is limited to the public comment_count field. The Actor does not download audio files, private tracks or account data.

Input

The input is a list of public SoundCloud URLs plus an item budget and proxy setting. Search, track, user and set URLs can be mixed in one run.

FieldTypeRequiredDefaultWhat it does
startUrlsstring[]YesSoundCloud search examplePublic track, user, set or search URLs. Search URLs use their q parameter.
maxItemsintegerNo20Maximum objects saved across all URLs. The free tier is capped at 20.
includeCommentsbooleanNofalsePresent in the form for compatibility. The current build does not fetch comment threads.
proxyobjectNoApify ProxyProxy configuration. A proxy is strongly recommended for larger runs and repeated client ID resolution.

Start with a single track or user URL to see the raw object shape, then add search URLs. Because search can return users before tracks, filter locally on kind: track when you need audio metrics. maxItems applies across the entire run, not per URL.

Output

The row shape depends on the object kind. Track rows carry audio and engagement fields; user rows carry profile and follower fields; playlist or set rows carry their own public collection metadata.

Field groupFieldsWhat you get
Track identityid, kind, title, permalink_url, genre, durationStable track ID, object kind, title, public URL, genre and duration in milliseconds.
Engagementplayback_count, likes_count, reposts_count, comment_count, download_countPublic play, like, repost, comment and download counts.
Release metadatacreated_at, release_date, label_name, license, publisher_metadataUpload and release dates, label, license and nested publisher identifiers such as ISRC and UPC.
ArtistuserNested public user object with username, profile URL, avatar, followers, track count and verification.
Mediaartwork_url, waveform_url, media, direct_stream_urlArtwork, waveform, transcoding metadata and a temporary direct stream URL for tracks.
Playback statestreamable, downloadable, state, sharingWhether the track can be streamed or downloaded and whether it is public.
SourcescrapedAtObservation timestamp added to each resolved object.

direct_stream_url can be null when SoundCloud does not expose a usable transcoding, and it can expire after a short period. likes_count, reposts_count, download_count and some publisher fields can be null. A user result has no track metrics; a playlist result is not a track. Check kind rather than assuming every row is audio.

Pricing

Pricing is pay-per-event. A start event is charged per run and each saved SoundCloud object is charged as a result.

EventFREEBRONZESILVERGOLD+
Actor start, per run$0.00005$0.00005$0.00005$0.00005
SoundCloud result$0.002$0.002$0.0015$0.0015

That is $2.00 per 1,000 objects on FREE and BRONZE, falling to $1.50 per 1,000 on SILVER and higher tiers. A 1,000-track run costs about $2.00 before the start fee. The free preview is capped at 20 objects, which is enough to validate a search or track URL.

Example Input

{
"startUrls": [
{
"url": "https://soundcloud.com/holypriest_music/techno"
}
],
"maxItems": 20,
"proxy": {
"useApifyProxy": true
}
}

This resolves one public track and exposes its metrics, nested artist object and a temporary stream URL. Use a search URL such as https://soundcloud.com/search?q=techno when you want a batch.

Example Output

{
"kind": "track",
"id": 2392431381,
"title": "TECHNO",
"permalink_url": "https://soundcloud.com/holypriest_music/techno",
"genre": "Dance",
"duration": 160171,
"playback_count": 107235,
"likes_count": 4891,
"reposts_count": 91,
"comment_count": 55,
"download_count": 0,
"created_at": "2026-09-01T10:04:19Z",
"release_date": "2026-09-11T00:00:00Z",
"label_name": "FXCK",
"license": "all-rights-reserved",
"streamable": true,
"downloadable": false,
"user": {
"username": "HOLY PRIEST",
"permalink_url": "https://soundcloud.com/holypriest_music",
"followers_count": 148116,
"track_count": 58,
"verified": true
},
"direct_stream_url": "https://cf-preview-media.sndcdn.com/preview/example.mp3",
"scrapedAt": "2026-10-22T12:00:00.000Z"
}

This is a trimmed real sample. duration is in milliseconds, not seconds. The real row also contains the full nested media transcoding list, publisher metadata and waveform URL. Stream URLs are temporary.

Integrations and Automation

Call the Actor through the Apify API, Apify MCP, a scheduled task, Zapier, Make or n8n. Export JSON, CSV or Excel, or push rows to Google Sheets, Airtable, a database, a music analytics tool or a webhook.

For artist research, explode the nested user object into an artist table and key tracks on id. Store playback_count and likes_count with scrapedAt so you can calculate growth instead of treating a single snapshot as a trend.

For audio pipelines, treat direct_stream_url as a short-lived signed URL. Download promptly, record the resolution time, and re-resolve the track if the URL expires. Do not assume the same URL will work in a later run.

FAQ

Does the Actor download audio files?

No. It resolves metadata and a temporary direct stream URL. You are responsible for complying with copyright, licensing and SoundCloud terms if you use that URL.

Why does a search return users instead of tracks?

SoundCloud search can mix tracks, users and playlists. Filter on kind: track when you need audio metrics, or search by a more specific track title.

Why is direct_stream_url null or expired?

The track may not expose a usable transcoding, may be region-restricted or may have changed. The URL is short-lived by design, so re-resolve the track for a later job.

Does includeComments fetch comment threads?

Not in the current build. The field is present for compatibility, but only the public comment_count is returned.

Can I scrape private tracks or user emails?

No. The Actor reads public objects only. It does not log in, access private tracks or expose account emails.

What does maxItems count?

It counts saved objects across all start URLs, including users and playlists. A run with a search URL can therefore produce fewer tracks than maxItems.

For AI Agents and LLM Apps

The Actor provides raw public SoundCloud objects with stable IDs, artist relationships and engagement metrics. It is suitable for music discovery, catalog analysis and metadata enrichment through the Apify API or Apify MCP.

  • Always branch on kind; a result can be a track, user or playlist, and the fields differ.
  • Track durations and playback counts are numeric, but duration is in milliseconds.
  • direct_stream_url is temporary. Use it promptly and never present it as a permanent asset URL.
  • The nested user object is the artist profile; do not flatten it without preserving the user ID or permalink.
  • The free tier is capped at 20 saved objects across all start URLs.

This Actor is an independent tool and is not affiliated with, endorsed by or sponsored by SoundCloud. It reads publicly available metadata and does not bypass private tracks or access controls. SoundCloud terms, copyright law and the rights of artists and labels still apply.

Do not redistribute audio, artwork or other copyrighted media without permission. Stream URLs are temporary and may be subject to licensing restrictions. If you process personal data from artist or listener profiles, keep a lawful basis and honor platform and privacy obligations.

SEO Keywords

SoundCloud scraper, SoundCloud track data, SoundCloud API alternative, SoundCloud stream URL, SoundCloud music data, SoundCloud artist data, SoundCloud play counts, SoundCloud likes, SoundCloud metadata, music data scraper, SoundCloud search scraper, SoundCloud dataset, artist analytics, track metadata, music discovery data, SoundCloud waveform, SoundCloud label data, audio metadata extraction, music catalog research, SoundCloud profile scraper