Genius Scraper — Lyrics, Credits, Samples & Annotations
Pricing
from $2.75 / 1,000 results
Genius Scraper — Lyrics, Credits, Samples & Annotations
Scrape songs from Genius: full lyrics, credits (producers & writers), samples and interpolations, album, release date, streaming links, tags, stats — plus crowd-sourced annotations. Search songs, sweep an artist's catalog, or target URLs. No token required.
Pricing
from $2.75 / 1,000 results
Rating
0.0
(0)
Developer
Haketa
Maintained by CommunityActor stats
0
Bookmarked
6
Total users
3
Monthly active users
7 days ago
Last modified
Categories
Share
🎼 Genius Scraper — Lyrics, Credits, Samples & Annotations
This Genius scraper extracts the complete picture of any song from Genius: full lyrics, producer & writer credits, the samples & interpolations graph, album and release info, streaming links, pageview stats, cover art, and the crowd-sourced annotations behind the words. Enter a song name, a Genius URL, or an artist and press Start — no login, no API token, no coding. It is the fastest way to scrape Genius at scale and turn messy song pages into clean, structured records.
Export every result to JSON, CSV, Excel, or API.
🎧 Built for music-data analysts, music supervisors & sync-licensing teams, NLP/ML engineers, journalists, playlist curators, and musicology researchers who need lyrics, credits, and sample relationships as structured data.
🔎 Why scrape Genius?
Genius is the largest crowd-sourced music knowledge base on the web — millions of songs with verified lyrics, detailed producer and writer credits, the relationships between tracks (who sampled, interpolated, covered or remixed what), and line-by-line annotations that explain the meaning behind the words. For anyone working with music, that combination is uniquely valuable and exists nowhere else in one place.
The problem is that all of it lives in unstructured HTML pages built for human reading. Copy-pasting lyrics, hand-collecting credits, and manually tracing sample chains across hundreds of songs is slow, error-prone, and impossible to keep up to date. A Genius scraper turns those pages into a tidy table you can filter, join, and analyze — one row per song, spreadsheet-ready.
This Actor reads Genius's own public Genius API endpoints (the same JSON the site uses), so the Genius data you get is clean and complete rather than scraped-from-HTML guesswork. No token or account is required.
Common reasons people scrape Genius:
- 🎤 Build a lyrics dataset with complete, in-order lyrics for NLP, search, or analysis.
- 🎛️ Collect producer and writer credits for royalty research, catalog work, or journalism.
- 🔗 Trace samples and interpolations — the influence graph behind a track — for sync licensing and clearance.
- 📊 Track pageviews and popularity stats across an artist's catalog or a genre.
- 💡 Harvest annotations (community explanations) paired with the lyric fragments they describe.
- ▶️ Pull Spotify, YouTube, Apple Music, and SoundCloud links to join Genius with streaming data.
- 🖼️ Grab cover-art image URLs and metadata to enrich a music catalog or app.
✨ What this Genius scraper does
- ✅ Two input modes — scrape a specific list of songs (by name, Genius URL, or song ID) and/or sweep each artist's most popular catalog automatically.
- ✅ Full lyrics — complete, correctly ordered lyric text for every song (toggle on/off).
- ✅ Rich song metadata —
title,artist,album,releaseDate,producers,writers,featuredArtists,primaryGenre, alltags,language, and anexplicitflag. - ✅ Samples & interpolations graph — the
songRelationshipsfield maps every track this song samples and everything that sampled, interpolated, covered, remixed, performed live, or translated it. Most Genius scrapers do not provide this. - ✅ Annotations — each is a
{fragment, explanation, votes, author, authorIq}pair: the lyric line plus the community's explanation of it (toggle on/off). - ✅ Streaming links —
spotifyUrl,youtubeUrl,appleMusicUrl, andsoundcloudUrlwhen available. - ✅ Stats & media —
pageviews,hotflag,annotationCount,sampledInCount, andsongArtImageUrl(high-resolution cover art). - ✅ Automatic pagination across an artist's catalog and automatic de-duplication within each run.
- ✅ Clean, compact output — one row per song, empty fields omitted, exportable to JSON, CSV, Excel, or API.
- ✅ No token, no login — works out of the box; proxy support built in for reliable collection.
Everything above reflects what the Actor actually captures from the Genius API — no inflated claims.
🎯 Use cases
- 🎧 Music data analysts — assemble a structured dataset of songs with lyrics, credits, genres, stats, and streaming links for dashboards and models.
- 🎬 Music supervisors & sync-licensing / clearance teams — trace the samples and interpolations behind a track before using it, using the
songRelationshipsinfluence graph. - 🤖 NLP / ML engineers — train and evaluate models on lyrics paired with their annotations for figurative language, reference resolution, and lyric generation.
- ✍️ Journalists & content creators — pull verified credits, the meaning behind lines, and sample history for articles, explainers, and videos.
- 🎓 Researchers & educators — study lyrics, references, and music-influence networks across artists, eras, and genres.
- 🎵 Playlist curators & A&R — scan an artist's most popular songs with pageviews and genre tags in one sweep.
- 📈 Royalty & catalog teams — collect producer and writer credits across a catalog for rights research.
- 🏷️ App & product teams — enrich a music product with cover art, metadata, and cross-platform streaming links.
📥 Input
Provide songs, artists, or both. Everything is optional — if you leave the inputs empty the Actor runs a small default sample so you can see the output shape immediately.
| Field | Type | Description |
|---|---|---|
songs | array of strings | Songs to scrape. Each item can be a song name (e.g. HUMBLE Kendrick Lamar), a Genius song URL, or a numeric song ID. |
artists | array of strings | Optional. Artist names (e.g. Kendrick Lamar, Taylor Swift) — the Actor scrapes each artist's most popular songs. |
maxSongsPerArtist | integer | How many of each artist's most popular songs to scrape. Default 10. |
includeLyrics | boolean | Include the full lyrics text for each song. Default true. |
includeAnnotations | boolean | Include crowd-sourced annotations (fragment → explanation, votes, author). Default true. |
maxItems | integer | Stop after scraping this many songs. Set 0 for no limit. Default 25. |
proxyConfiguration | object | Proxy settings. Apify Proxy is recommended for reliable collection. |
Example input — a few songs, fully scraped
{"songs": ["HUMBLE Kendrick Lamar","https://genius.com/Kendrick-lamar-not-like-us-lyrics"],"includeLyrics": true,"includeAnnotations": true,"maxItems": 25}
Example input — sweep an artist's popular catalog
{"artists": ["Kendrick Lamar"],"maxSongsPerArtist": 20,"maxItems": 20}
Example input — lyrics + metadata only (faster, no annotations)
{"artists": ["Drake"],"includeAnnotations": false,"maxItems": 30}
📤 Output
Each item is one song. Only fields that have a value are included, so sparse or older songs carry fewer keys. Here is a trimmed sample of a typical Genius data record:
{"songId": 3039923,"title": "HUMBLE.","artist": "Kendrick Lamar","url": "https://genius.com/Kendrick-lamar-humble-lyrics","releaseDate": "2017-03-30","producers": "Mike WiLL Made-It, Pluss","writers": "Kendrick Lamar, Mike WiLL Made-It, Pluss, Asheton Hogan","featuredArtists": null,"album": "DAMN.","primaryGenre": "Rap","tags": "Rap, Pop, Trap, West Coast","language": "en","explicit": true,"songArtImageUrl": "https://images.genius.com/483306c535608c27f9e3781b854dc91d.1000x1000x1.png","pageviews": 12360658,"hot": null,"spotifyUrl": "https://open.spotify.com/track/7KXjTSCq5nL1LoYtL7XAwS","youtubeUrl": "https://www.youtube.com/watch?v=tvTRZJ-4EyI","appleMusicUrl": "https://music.apple.com/us/album/1223592498","soundcloudUrl": "https://soundcloud.com/kendrick-lamar-music/humble","description": "On the ironically braggadocious track \"HUMBLE.\" Kendrick Lamar…","annotationCount": 21,"sampledInCount": 1,"songRelationships": [{ "type": "samples", "title": "Pulsar City Alarm", "artist": "Adams & Fleisner", "url": "https://genius.com/…" },{ "type": "sampled_in", "title": "…", "artist": "…", "url": "https://genius.com/…" }],"lyrics": "[Intro]\nNobody pray for me…","annotations": [{ "fragment": "Watch my soul speak…", "explanation": "…", "votes": 809, "author": "ChanLeigh", "authorIq": 25000 }]}
Field reference
| Field | Description |
|---|---|
songId | Genius numeric song ID. |
title · artist · url | Song title, primary artist, and the Genius page URL. |
lyrics | Full lyrics text (present when includeLyrics is on). |
releaseDate | Release date (YYYY-MM-DD) when available. |
producers · writers · featuredArtists | Comma-separated credit lists. |
album | Album name when available. |
primaryGenre · tags | Primary genre tag and the full comma-separated tag list. |
language | Song language code (e.g. en) when available. |
explicit | true/false explicit-content flag when available. |
songArtImageUrl | High-resolution cover-art image URL. |
pageviews | Genius pageview count. |
hot | true when Genius marks the song as hot. |
spotifyUrl · youtubeUrl · appleMusicUrl · soundcloudUrl | Streaming links, present when Genius has them. |
description | The song's "About" description. |
annotationCount | Total annotations on the song. |
sampledInCount | How many tracks sampled this song. |
songRelationships | Array of {type, title, artist, url} — samples, interpolations, covers, remixes, live versions, and translations. |
annotations | Array of {fragment, explanation, votes, author, authorIq} (present when includeAnnotations is on). |
Fields such as album, releaseDate, streaming links, language, and explicit are present when available on Genius — they depend on what the community has filled in for each song.
🔁 Pagination & scale
For the artists mode, the Genius scraper paginates automatically through each artist's catalog — it requests the artist's songs sorted by popularity, 50 per page, following Genius's next_page cursor across pages until it reaches your maxSongsPerArtist limit or the catalog ends. For the songs mode, each entry (name, URL, or ID) is resolved to a Genius song and fetched directly.
You control the overall scale with two inputs:
maxSongsPerArtist— caps how many popular songs are pulled per artist.maxItems— caps the total number of songs written to the dataset across the whole run (set0for no limit).
Songs are de-duplicated within each run (by Genius song ID), so overlapping inputs never produce duplicate rows. The Actor fetches multiple songs concurrently and retries transient 403/429 responses with proxy rotation, so large multi-artist runs stay fast and reliable. Lyrics are read from Genius's lightweight embed endpoint rather than the heavy full song page, which keeps data transfer — and cost — low.
⚙️ How to use
- Open the Actor on the Apify Console.
- Enter one or more Songs (names, Genius URLs, or IDs) and/or Artists, and set
maxSongsPerArtist/maxItems. - Toggle Include lyrics and Include annotations to taste.
- Click Start and watch progress in the log.
- Open the Output tab to preview results, then Export to JSON, CSV, Excel, or XML — or pull them via the Apify API.
- Automate it: run on a Schedule, or connect to Make, Zapier, n8n, Google Sheets, Airtable, or a webhook to push fresh Genius data into your stack.
💡 Tips
- 🎯 Include the artist in a song query (
HUMBLE Kendrick Lamar, not justHUMBLE) so the resolver picks the right match. - ⚡ Turn off annotations (
includeAnnotations: false) for a much faster lyrics-plus-metadata run. - 🔗 The
songRelationshipsfield is where the samples & interpolations graph lives — filter bytype(samples,sampled_in,interpolates,cover_of,remixed_by, etc.) to isolate the relationship you need. - 🖼️ Use
songArtImageUrlto pull high-resolution cover art directly into a catalog or app. - 🌐 Keep Apify Proxy enabled for reliable collection on large runs.
- 🔢 Start with a small
maxItemsto preview the output shape, then scale up.
❓ FAQ
Is scraping Genius legal? This Genius scraper collects publicly visible song information and community-contributed content for research, education, and analysis. Lyrics and annotations are copyrighted, user-generated content — you are responsible for how you use the data and for complying with applicable laws and platform terms. Do not redistribute copyrighted content commercially without permission.
Do I need a Genius API key, token, or account? No. The Actor works with no token and no login. It reads Genius's own public endpoints.
How many songs can I scrape and how fast is it?
As many as you like — set maxItems: 0 for no limit. An artist sweep can pull their full popular catalog, and multiple songs are fetched concurrently, so a typical 25–50 song run finishes in well under a minute. Large multi-artist runs scale cleanly.
Do I need proxies? Apify Proxy is recommended and enabled by default for reliable collection, especially on larger runs. The Actor rotates proxies and retries transient blocks automatically.
What export formats are supported? JSON, CSV, Excel, and XML, plus direct access via the Apify API and integrations like Make, Zapier, n8n, Google Sheets, and webhooks.
Does it get the samples and interpolations data?
Yes — the songRelationships field lists what a song samples and everything that sampled, interpolated, covered, remixed, performed live, or translated it. This is the influence graph most Genius scrapers omit.
Are the lyrics complete?
Yes. When includeLyrics is on, each row contains the full, correctly ordered lyrics text, cleaned of HTML.
Can I filter by artist or scrape a whole catalog? Yes. Use the Artists field and set Songs per artist to sweep each artist's most popular songs.
How fresh is the data? Every run fetches live data from Genius at that moment, so pageviews, annotations, and metadata reflect the current state of each song page.
Will I get duplicate songs? No. Results are de-duplicated by Genius song ID within each run.
🔗 Related scrapers
- Podchaser Scraper — podcasts, episodes, and credits data.
- Discogs Scraper — releases, artists, labels, and marketplace pricing.
- SoundCloud Scraper — tracks, artists, and play stats from SoundCloud.
🎼 Ready to turn Genius into structured data? Enter a song or artist and press Start — then export lyrics, credits, samples, and annotations to JSON, CSV, Excel, or API.