Bandcamp Scraper avatar

Bandcamp Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Bandcamp Scraper

Bandcamp Scraper

Scrape Bandcamp albums, tracks, artists and labels, Bandcamp search and Discover: prices, formats, release dates, labels, tracklists, ISRC, lyrics and discographies.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Alexandre Paradis

Alexandre Paradis

Maintained by Community

Actor stats

4

Bookmarked

90

Total users

6

Monthly active users

8 days ago

Last modified

Share

Bandcamp Scraper extracts albums, tracks, artists and labels from Bandcamp. Start from any Bandcamp URL (including artists on their own domain), search Bandcamp by keyword, or browse a genre on Bandcamp Discover. You get clean records with prices and formats, release dates, labels, tracklists with durations, ISRC codes, lyrics and full discographies.

It reads the data Bandcamp embeds in its pages and the endpoints its own site uses, so it does not run a browser. Runs are fast and cheap.

What data can you get from Bandcamp?

RecordMain fields
albumTitle, artist, the artist or label account that posted it, label, release date, tags, about, credits, UPC, cover, digital price, every format (vinyl, CD, cassette) with its price, tracklist with durations
trackTitle, artist, the artist or label account that posted it, album, position, duration, release date, ISRC, lyrics, credits, tags, price
artist / labelName, location, bio, photo, links (website, socials), discography with each release's artist
searchResultName, type (album, track, artist, label), artist, genre, tags, location, URL
discoverResultTitle, artist, the artist or label account that posted it, price, release date, track count, physical formats with prices, location
discoverArtistName, location, genre and URL of an artist or label account found on Discover

How to scrape Bandcamp

  1. Choose what to scrape:
    • Start URLs: paste album, track, artist or label URLs. An artist URL (for example https://artist.bandcamp.com) gives the artist and their whole discography.
    • Search queries: keywords, like on Bandcamp's search page.
    • Discover genres: genres or tags such as metal, ambient or hip-hop-rap, sorted by best-selling, new arrivals or surprise me. Get the releases, or the artists and labels that posted them.
  2. Set Maximum results per source.
  3. Click Start, then download the dataset as JSON, CSV, Excel or HTML, or read it through the Apify API.

Search and Discover give short results. Turn on Open search and Discover results to get the full album, track or artist record for each one. A Discover artist or label opened this way gives its full record without its releases.

Input

FieldDescriptionDefault
startUrlsAlbum, track, artist or label URLsnone
searchQueriesKeywords to search, up to 50 results eachnone
searchTypeall, albums, tracks or artistsall
discoverGenresGenres or tags to browse on Bandcamp Discovernone
discoverSorttop (best-selling), new (new arrivals) or rand (surprise me)top
discoverResultTypereleases (one record per release) or artists (one record per artist or label account)releases
maxItemsMaximum results from each start URL, search query and genre100
openResultsOpen each search or Discover result for the full record. Discover artists and labels open without their releasesfalse
includeTracksAdd one record per track of each album (ISRC, lyrics, credits)false
includeDiscographyAdd one record per release of each artist or label, except those opened from Discovertrue
proxyConfigurationProxy settings. Apify Proxy is recommendedApify Proxy

Give at least one start URL, search query or genre.

{
"startUrls": [{ "url": "https://fivefingerdeathpunch.bandcamp.com" }],
"discoverGenres": ["metal"],
"discoverSort": "new",
"maxItems": 50
}

Output

Every record has a type and a scrapedAt date. An album, shortened to two tracks:

{
"type": "album",
"id": 1473119324,
"url": "https://fivefingerdeathpunch.bandcamp.com/album/legacy",
"title": "Legacy",
"artist": {
"name": "Five Finger Death Punch",
"url": "https://fivefingerdeathpunch.bandcamp.com"
},
"account": {
"name": "Five Finger Death Punch",
"url": "https://fivefingerdeathpunch.bandcamp.com",
"id": 3335222211
},
"label": {
"name": "Better Noise Music",
"url": "https://betternoisemusic.bandcamp.com"
},
"releaseDate": "2026-07-31T00:00:00.000Z",
"tags": ["Metal", "Rock", "Las Vegas"],
"about": null,
"credits": "2026, Five Finger Death Punch, under exclusive license to Better Noise Music",
"upc": "810202539501",
"imageUrl": "https://f4.bcbits.com/img/a3305686649_10.jpg",
"price": { "amount": 10, "currency": "USD" },
"formats": [
{ "name": "Legacy", "type": "Digital", "format": "DigitalFormat", "price": 10, "currency": "USD" },
{ "name": "Digipak", "type": "Compact Disc (CD)", "format": "CDFormat", "price": 15.98, "currency": "USD" },
{ "name": "Clear Vinyl", "type": "Vinyl LP", "format": "VinylFormat", "price": 29.98, "currency": "USD" }
],
"isPreorder": false,
"trackCount": 10,
"durationSec": 2207.623,
"tracks": [
{ "id": 3262287883, "position": 1, "title": "Legacy", "url": "https://fivefingerdeathpunch.bandcamp.com/track/legacy", "durationSec": 210 },
{ "id": 1451168247, "position": 2, "title": "De Oppresso Liber", "url": "https://fivefingerdeathpunch.bandcamp.com/track/de-oppresso-liber", "durationSec": 240.208 }
],
"scrapedAt": "2026-10-15T16:02:11.204Z"
}

The dataset has a view per record type: Albums, Tracks, Artists and labels, Search results and Discover.

How much does it cost to scrape Bandcamp?

The actor charges per result in the dataset. The current price is on the Pricing tab. Opening results, tracks or discographies makes more requests and adds results, so those runs cost more.

Tips

  • Maximum results per source applies to each start URL, search query and genre on its own. An artist URL counts the artist and every release it opens.
  • An account is a label when Bandcamp marks it as one, or when more than half of its releases are by other artists. Many labels post from an ordinary artist account, which Bandcamp does not mark. A label that leaves the artist out of its releases can come back as an artist, and an artist who releases under other names as a label.
  • An account with a single release opens on that release. Opened from Discover artists, it still gives an artist or label record, with that release.
  • A result found twice in the same run (for example an album from an artist page and from a search) is kept once.
  • Bandcamp's search returns at most 50 results per query. For more, browse genres on Discover.
  • On a label release or a collaboration, where the release artist differs from the name of the account that posted it (ignoring case), album, track and Discover records give the artist as a name only, with a null artist.url (and a null artist.id on Discover records). account links the account that posted it.
  • Discover artists are the accounts that posted the releases. A release put out by a label gives the label, since Discover names the artist without linking to their page. Turn on Open search and Discover results to tell them apart.

Migrating from version 0.x

Version 1.0 is a rewrite with a new output:

  • Flat records with a type field, instead of one item per search page with nested results.
  • New fields: label, formats with prices, UPC, ISRC, lyrics, credits, release dates in ISO format, durations in seconds, artist location, bio and links.
  • New inputs: searchQueries, searchType, discoverGenres, discoverSort, maxItems, openResults, includeTracks and includeDiscography. The fetch* options, maxPagesToSearch and debug are gone. For fetchArtistsFromDiscover, set discoverResultType to artists.
  • Artists and albums on their own domain work.
  • Fans' and supporters' names are not collected.

The actor only collects what Bandcamp shows publicly about releases, artists and labels. It does not collect fans' or supporters' names. You are responsible for how you use the data: follow Bandcamp's terms of use and the laws that apply to you. The search and Discover endpoints are the ones Bandcamp's own site uses. They are not a documented public API and may change.

Support

Found a bug or need a field? Open an issue on the actor's Issues tab.