SwiftSchema Logo

    SwiftSchema

    Intuitive Schema Generation at Your Fingertips

    AboutLearnContact

    Music Recording Schema Generator — Describe Tracks Clearly

    Generate valid MusicRecording JSON‑LD for song and track pages. Clarify title, artist, album, duration, and audio details for better understanding.

    Why many track pages underperform

    Pain points we solve

    • Tracks aren’t linked to the right album, fragmenting discographies.
    • Duration isn’t ISO 8601, triggering validator warnings.
    • Audio file metadata is missing (contentUrl, encodingFormat).
    • Solo vs. band credit is inconsistent across releases.
    • Official profiles and streaming links aren’t marked with sameAs or url.

    How SwiftSchema helps

    Solution

    The MusicRecording generator focuses on essentials: track title, artist (Person or MusicGroup), album linkage, ISO 8601 duration, and audio details via an AudioObject (contentUrl and encodingFormat).

    It outputs clean, copy‑ready JSON‑LD per track, supports canonical url and images, and lets you add sameAs links for official/streaming profiles to strengthen entity understanding.

    How it works

    How it works

    1. Choose MusicRecording in the generator below.
    2. Enter track name, artist (Person or MusicGroup), and album via inAlbum.
    3. Add duration in ISO 8601 (for example, PT3M45S) and cover image.
    4. Provide audio details with an AudioObject (contentUrl, encodingFormat).
    5. Copy JSON or Script, paste into the track page, and validate in the Rich Results Test.
    Generate MusicRecording JSON‑LD

    Paste once per track page. Validate. Ship.

    What is MusicRecording structured data?

    MusicRecording describes individual tracks: title, artist credit, album affiliation, duration, audio sources, cover art, and canonical URLs. It links MusicGroup (artist) and MusicAlbum (release) to the specific song, giving search engines and streaming partners confidence that the track belongs to a particular discography. Accurate track-level schema prevents duplicate entries and keeps reviews, playlists, and lyrics tied to the right song.

    Why track markup matters

    • Catalog integrity: Track listings, durations, and album links remain consistent across websites, press kits, and streaming embeds.
    • Credit accuracy: Proper
      byArtist
      attribution helps disambiguate artists with similar names and highlights featured performers.
    • Discovery: Structured audio metadata enables assistants and search to route “Play [song] by [artist]” requests to the correct track.
    • Automation: Labels can sync track data from their CMS to multiple sites, ensuring each song page contains substantial, up-to-date information instead of thin copy.

    Essential properties to include

    • name
      : Track title; use
      alternateName
      for remixes or translations.
    • byArtist
      : Person or MusicGroup that owns the recording credit. Match the release’s metadata.
    • inAlbum
      : MusicAlbum object referencing the parent release. Include
      name
      and, ideally,
      url
      or
      @id
      .
    • duration
      : ISO 8601 string such as
      PT3M45S
      .
    • audio
      : AudioObject with
      contentUrl
      ,
      encodingFormat
      , optional
      bitrate
      ,
      embedUrl
      , and
      duration
      . This represents previews or full streams.
    • url
      : Canonical track page (lyrics, story, or streaming embed).
    • sameAs
      : Official streaming or social links (Spotify track URL, Apple Music, SoundCloud).
    • image
      : Single or track artwork.
    • isrcCode
      : International Standard Recording Code for unique identification.
    • inPlaylist
      : ItemList or Playlist references highlighting curated placements.
    • recordingOf
      : Link to a MusicComposition when modeling works-based catalogs.

    Preparing track content before generating schema

    1. Gather metadata: Track titles, durations, ISRC codes, composers/producers, featured artists, release dates.
    2. Collect assets: Cover art, artist imagery, waveform visuals, embedded players.
    3. Map relationships: Determine albums, EPs, and playlists the track belongs to. Note remixes or alternate versions.
    4. Compile streaming/purchase URLs: Spotify, Apple Music, Bandcamp, SoundCloud, official store downloads.
    5. Write compelling copy: Provide background, lyrics snippets, credits, or behind-the-scenes notes so the page isn’t thin.
    6. Plan localization: Translate titles and descriptions for localized pages; prepare localized schema with
      inLanguage
      .
    7. Coordinate rights: Ensure you have permission to share audio URLs or embed players.

    Implementation workflow inside SwiftSchema

    1. Select MusicRecording in the generator.
    2. Enter
      name
      , optional
      alternateName
      ,
      byArtist
      ,
      duration
      ,
      image
      , and canonical
      url
      .
    3. Add
      inAlbum
      referencing the parent MusicAlbum (include
      name
      ,
      url
      , and
      @id
      if available).
    4. Configure
      audio
      with an AudioObject:
      contentUrl
      ,
      encodingFormat
      , optional
      bitrate
      ,
      duration
      ,
      embedUrl
      .
    5. Provide
      sameAs
      links for official streaming listings or lyric pages.
    6. Include
      isrcCode
      ,
      inPlaylist
      ,
      recordLabel
      , or
      producer
      metadata when relevant.
    7. Export the JSON-LD, embed it on the track page, and validate via Google’s Rich Results Test or Schema Markup Validator.

    Troubleshooting and QA

    • Missing album linkage: Always provide
      inAlbum
      . Orphan tracks weaken discography relationships.
    • Incorrect duration: Use ISO 8601 format (
      PT
      + minutes +
      M
      + seconds +
      S
      ). Avoid
      3:45
      .
    • Audio metadata gaps: Include
      contentUrl
      and
      encodingFormat
      . Ensure URLs are publicly accessible.
    • Ambiguous artist: Match the credit from the release. Use MusicGroup for bands, Person for solo acts, and add
      sameAs
      to disambiguate.
    • Outdated streaming links: When platforms rotate URLs, update
      sameAs
      and
      audio
      entries promptly.
    • Localization issues: Align
      inLanguage
      with the page’s content and track title translations.

    Automate QA by comparing the schema to your master track database. Flag mismatches in duration, album assignment, or artist credit before publishing.

    Maintenance and release management

    • Update schema when releasing remasters, live versions, or remixes. Different versions should use
      alternateName
      ,
      recordingOf
      , or separate MusicRecording entries.
    • Refresh
      sameAs
      /
      audio
      URLs when licensing or CDN links change.
    • Keep
      isrcCode
      accurate; new versions may get new codes.
    • Add playlist references as tracks appear on notable compilations.
    • Audit track pages quarterly to ensure metadata, images, and links remain accurate; log updates in your catalog tracker.

    Common Errors & Fixes

    • Missing album linkage: add
      inAlbum
      to connect tracks to releases.
    • No audio metadata: include
      audio.contentUrl
      and
      audio.encodingFormat
      .
    • Incorrect duration: use ISO 8601 (
      PT3M45S
      ).
    • Ambiguous artist: use
      byArtist
      with the proper Person or MusicGroup and include
      sameAs
      .
    • Absent streaming links: add
      sameAs
      or
      url
      pointing to official track pages for better entity resolution.

    Required properties

    • name

    Recommended properties

    • byArtist.name
    • inAlbum.name
    • duration
    • isrcCode
    • audio.contentUrl
    • audio.encodingFormat
    • image
    • url
    • sameAs[]
    • inPlaylist.name
    Minimal MusicRecording JSON-LD
    Validate
    {
      "@context": "https://schema.org",
      "@type": "MusicRecording",
      "name": "Schema Step",
      "byArtist": {
        "@type": "Person",
        "name": "A. Artist"
      },
      "inAlbum": {
        "@type": "MusicAlbum",
        "name": "Structured Grooves"
      },
      "duration": "PT3M45S",
      "audio": {
        "@type": "AudioObject",
        "contentUrl": "https://cdn.example.com/audio/schema-step.mp3",
        "encodingFormat": "audio/mpeg"
      },
      "image": [
        "https://example.com/images/schema-step-cover.webp"
      ],
      "url": "https://example.com/music/structured-grooves/schema-step"
    }

    FAQs

    How do I link a track to its album?Show
    Use `inAlbum` with a `MusicAlbum` reference (at least the album `name`).
    How do I represent the audio file?Show
    Use the `audio` property with an `AudioObject` that includes `contentUrl` and `encodingFormat` (e.g., `audio/mpeg`).
    What duration format should I use?Show
    Use ISO 8601 durations (e.g., `PT3M45S` for 3 minutes, 45 seconds).
    Should the artist be a Person or MusicGroup?Show
    Use `byArtist` with a `Person` for solo artists or a `MusicGroup` for bands.

    Generate Music Recording schema

    Fill in page details, copy JSON or Script, and validate.

      Schema Type

      🎵 Music Recording Schema Generator

      With SwiftSchema's Music Recording Schema Generator, ensure your individual tracks are optimally displayed in search engines. Offer rich details like track length, musician, and album to offer audiences a comprehensive understanding. Drive higher song engagement and downloads using this focused tool.

      Generated Schema

      Validate your schema here.