MusicGroup
MusicGroup is a PerformingGroup subtype (extending Organization) for bands, orchestras, choirs, and solo musicians. It has 3 properties of its own: album, genre, and track. Google uses it for the artist knowledge panel, Google Music integration, and artist-related searches.
The type hierarchy is Thing → Organization → PerformingGroup → MusicGroup. Despite the name, MusicGroup works for solo artists too. Schema.org explicitly states it "can also be a solo musician." Use it for any music-making entity.
Full example of schema.org/MusicGroup json-ld markup
The markup is verified as valid with Rich Results Test from Google.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@id": "https://copenhagenensemble.dk#group",
"@type": "MusicGroup",
"name": "The Copenhagen Ensemble",
"description": "Chamber orchestra based in Copenhagen, specializing in film scores and contemporary classical commissions. Founded by conductor Nora Lindgren in 2020.",
"url": "https://copenhagenensemble.dk",
"logo": "https://copenhagenensemble.dk/images/logo.png",
"image": "https://copenhagenensemble.dk/images/ensemble-portrait.jpg",
"genre": ["Film Score", "Contemporary Classical"],
"foundingDate": "2020",
"foundingLocation": {
"@type": "Place",
"name": "Copenhagen, Denmark"
},
"album": [
{
"@id": "https://xoofilms.dk/music/the-childrens-doctor-score#album"
}
],
"member": [
{
"@type": "Person",
"name": "Nora Lindgren",
"url": "https://noralindgren.dk",
"roleName": "Conductor and Composer"
},
{
"@type": "Person",
"name": "Erik Dahl",
"roleName": "First Violin"
},
{
"@type": "Person",
"name": "Sigrid Holm",
"roleName": "Cello"
}
],
"sameAs": [
"https://open.spotify.com/artist/xoo-copenhagen-ensemble",
"https://www.instagram.com/copenhagenensemble"
]
}
</script>album
album takes a MusicAlbum object or array. This links the artist to their discography. Each album can be a full MusicAlbum object or an @id reference to an album defined elsewhere. Google reads this to populate the discography section of the artist knowledge panel.
genre
genre takes a text string, array, or URL: "Classical", "Jazz", "Film Score". Google uses this for genre-filtered music searches. Use terms that match how listeners search: "rock" not "guitar-based contemporary popular music."
track
track can list individual MusicRecording objects or an ItemList of tracks. This is the artist-level track listing (all tracks by this artist), distinct from the album-level track listing in MusicAlbum. For most use cases, linking albums via album is sufficient. Use track for singles or tracks not on any album.
member and founder
member (inherited from Organization) lists the group's current members as Person objects. founder lists the original founders. For a band, these are the musicians. For an orchestra, list the conductor and principal players. Google reads member names for the knowledge panel's "Members" section.
Minimal valid version
The smallest markup that still produces a valid MusicGroup entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "MusicGroup",
"name": "The Copenhagen Ensemble",
"genre": "Film Score"
}
</script>Google rich results this unlocks
Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.
- Google docsMusic knowledge panel (indirect)
Common MusicGroup mistakes
Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.
- 01
Using Person for a solo musician
Wrong"@type": "Person" for a solo artist's music profileRight"@type": "MusicGroup" (schema.org says it "can also be a solo musician")MusicGroup is the correct type for any music-making entity, including solo artists. Person describes the individual; MusicGroup describes their music career. A solo artist should have both a Person block (biographical) and a MusicGroup block (discography), linked via sameAs or @id.
- 02
album as a string array
Wrong"album": ["The Children's Doctor: Original Score"]Right"album": [{ "@type": "MusicAlbum", "name": "The Children's Doctor: Original Score" }]album expects MusicAlbum objects, not plain strings. Structured objects let Google match albums to existing knowledge graph entities and display the full discography with artwork and track counts.
- 03
genre too specific or niche
Wrong"genre": "Scandinavian neo-romantic chamber film scoring"Right"genre": ["Film Score", "Contemporary Classical"]genre should use terms listeners actually search for. Hyper-specific genre descriptions do not match search queries. Use broad, recognizable terms and list multiple genres as an array if applicable.
- 04
Missing sameAs links to streaming platforms
WrongMusicGroup with name and genre but no sameAsRight"sameAs": ["https://open.spotify.com/artist/...", "https://music.apple.com/artist/..."]sameAs links to Spotify, Apple Music, YouTube Music, and Bandcamp are how Google matches your MusicGroup to the artist profiles on those platforms. Without them, Google may not connect your structured data to the streaming platform entries, resulting in a fragmented knowledge panel.
Schema properties in this example
About the example data
The Copenhagen Ensemble is a fictional chamber orchestra that performed the score for The Children's Doctor documentary under composer Nora Lindgren. The album property references the film score album via @id.
Comments
Loading comments...