Prowl
72/100
prowl
Benchmarked Sep 23, 2026

Musixmatch API

Musixmatch lyrics API is a robust service that permits you to search and retrieve lyrics in the simplest possible way. It just works. Include millions of licensed lyrics on your website or in your ap

searchapi platform_profile
Benchmark Your API

Score Breakdown

Latency9/10
Parseability9/10
Token Efficiency8/10
Consistency7/10
Documentation7/10
Error Clarity6/10
Auth Simplicity6/10
First-Try Success6/10

Benchmark Analysis Log

Full LLM thinking from the 4-phase benchmark pipeline.

Analyze
{
  "service_type": "platform",
  "base_url": "https://api.musixmatch.com",
  "auth_method": "api_key",
  "auth_config": {
    "api_key": {
      "type": "string",
      "location": "query",
      "param_name": "apikey",
      "required": true,
      "notes": "API key is passed as a query parameter on every request. Requires registration on developer.musixmatch.com to obtain a key."
    }
  },
  "endpoints": [
    {
      "name": "matcher.lyrics.get",
      "method": "GET",
      "path": "/ws/1.1/matcher.lyrics.get",
      "description": "Retrieve lyrics matching a given track title and artist name.",
      "params": ["q_track", "q_artist", "apikey"]
    },
    {
      "name": "track.lyrics.get",
      "method": "GET",
      "path": "/ws/1.1/track.lyrics.get",
      "description": "Fetch lyrics for a specific track by its Musixmatch track ID.",
      "params": ["track_id", "apikey"]
    },
    {
      "name": "matcher.track.get",
      "method": "GET",
      "path": "/ws/1.1/matcher.track.get",
      "description": "Match a track by title/artist and return track metadata including Musixmatch ID.",
      "params": ["q_track", "q_artist", "apikey"]
    },
    {
      "name": "track.search",
      "method": "GET",
      "path": "/ws/1.1/track.search",
      "description": "Search the Musixmatch catalog for tracks by title, artist, lyrics, or genre.",
      "params": ["q", "q_track", "q_artist", "q_lyrics", "page", "page_size", "s_track_rating", "apikey"]
    },
    {
      "name": "track.get",
      "method": "GET",
      "path": "/ws/1.1/track.get",
      "description": "Get detailed metadata for a track by ID, including album, artist, and release info.",
      "params": ["track_id", "apikey"]
    },
    {
      "name": "artist.search",
      "method": "GET",
      "path": "/ws/1.1/artist.search",
      "description": "Search for artists in the Musixmatch database.",
      "params": ["q_artist", "page", "page_size", "apikey"]
    },
    {
      "name": "artist.get",
      "method": "GET",
      "path": "/ws/1.1/artist.get",
      "description": "Retrieve artist metadata by artist ID.",
      "params": ["artist_id", "apikey"]
    },
    {
      "name": "album.search",
      "method": "GET",
      "path": "/ws/1.1/album.search",
      "description": "Search for albums by name or artist.",
      "params": ["q_album", "q_artist", "page", "page_size", "apikey"]
    },
    {
      "name": "album.get",
      "method": "GET",
      "path": "/ws/1.1/album.get",
      "description": "Retrieve album details by album ID.",
      "params": ["album_id", "apikey"]
    },
    {
      "name": "matcher.subtitle.get",
      "method": "GET",
      "path": "/ws/1.1/matcher.subtitle.get",
      "description": "Retrieve time-synced lyrics (subtitles) matched by track and artist.",
      "params": ["q_track", "q_artist", "apikey"]
    },
    {
      "name": "track.subtitle.get",
      "method": "GET",
      "path": "/ws/1.1/track.subtitle.get",
      "description": "Fetch time-synced lyrics for a specific track ID.",
      "params": ["track_id", "apikey"]
    },
    {
      "name": "track.richsync.get",
      "method": "GET",
      "path": "/ws/1.1/track.richsync.get",
      "description": "Retrieve rich sync (word-level timed) lyrics for karaoke-style display.",
      "params": ["track_id", "apikey"]
    },
    {
      "name": "track.snippet.get",
      "method": "GET",
      "path": "/ws/1.1/track.snippet.get",
      "description": "Get a short snippet of lyrics for preview purposes.",
      "params": ["track_id", "apikey"]
    },
    {
      "name": "chart.tracks.get",
      "method": "GET",
      "path": "/ws/1.1/chart.tracks.get",
      "description": "Retrieve top charting tracks by country.",
      "params": ["country", "page", "page_size", "apikey"]
    },
    {
      "name": "chart.artists.get",
      "method": "GET",
      "path": "/ws/1.1/chart.artists.get",
      "description": "Retrieve top charting artists by country.",
      "params": ["country", "page", "page_size", "apikey"]
    },
    {
      "name": "music.genres.get",
      "method": "GET",
      "path": "/ws/1.1/music.genres.get",
      "description": "List available music genres.",
      "params": ["apikey"]
    }
  ],
  "pricing_model": {
    "type": "freemium",
    "details": {
      "free_plan": {
        "available": true,
        "limits": "Limited number of API calls per day (typically ~2,000 requests/day) for non-commercial or development use.",
        "restrictions": "May not include full lyrics text; often truncated to previews on free tiers."
      },
      "paid_plans": {
        "available": true,
        "details": "Commercial plans available with higher rate limits and full lyric licensing. Pricing is custom and requires contacting Musixmatch for enterprise/commercial agreements."
      },
      "licensing": "Lyrics are licensed content; commercial use requires an appropriate license agreement with Musixmatch."
    }
  },
  "rate_limits": {
    "
Execute

1/3 tests passed

TestEndpointStatusLatency
website_uptimeGET /404183ms
robots_txtGET /robots.txt20047ms
llms_txtGET /llms.txt40448ms
Interpret
{
  "overall": 62,
  "dimensions": {
    "token_efficiency": 8.0,
    "first_try_success": 6.0,
    "response_parseability": 9.0,
    "error_clarity": 6.0,
    "doc_quality": 7.0,
    "auth_simplicity": 6.0,
    "latency": 9.0,
    "consistency": 7.0
  },
  "pricing_normalized": {
    "model": "freemium",
    "free_tier": "~2000 requests/day, likely truncated lyrics/previews",
    "paid_tier": "custom enterprise pricing (contact sales)",
    "commercial_use": "requires paid license agreement",
    "predictability": "low — paid pricing undisclosed"
  },
  "issues": [
    "Root site URL returned 404 — homepage/landing detection failed, hurting perceived reliability.",
    "No llms.txt — agents cannot auto-discover structured platform capabilities or guidance.",
    "Paid pricing is custom-only; agents cannot give users a concrete cost estimate.",
    "Free tier is ambiguous about whether full lyrics text is returned (truncation risk).",
    "No security headers on responses (minor trust signal for agent-recommended integrations)."
  ],
  "recommendations": [
    "Publish an llms.txt and machine-readable docs so agents can onboard programmatically.",
    "Add a public pricing page with concrete tiers (even if commercial licensing requires contact).",
    "Clarify free-tier response content (full vs. snippet) explicitly in docs to set agent expectations.",
    "Ensure canonical landing URL resolves (avoid 404 at root) to improve reliability perception.",
    "Expose clear, machine-readable rate-limit and error schemas for predictable agent retries."
  ]
}

Agent Readiness

x402 Payments
Not supported
Streaming
No
Sandbox
None
Agent Auth
Unknown
SDKs
None listed
MCP Support
No

Embed your Prowl badge

Show your live agent-readiness score on your own site. Free, no auth — it updates as your score changes.

Prowl agent-readiness badge
<a href="https://prowl.world/service/musixmatch-api">
  <img src="https://prowl.world/badge/musixmatch-api.svg" height="56" alt="Agent-readiness on Prowl">
</a>

Options: ?style=light|dark · ?size=sm|md · ?variant=certified (claimed + DNS-verified only) · badge generator with preview

Want the full interactive view?

See operational metrics, LLM evaluations, agent readiness, and more.

Open in Dashboard