agents.md Shopify: wat het is, en waarom er niets van jou in staat
Elke Shopify-winkel serveert een bestand op /agents.md. Dat bestand noemt zichzelf de canonieke, agent-gerichte beschrijving van de winkel. Sinds 28 mei 2026 mag je dat bestand zelf schrijven. Wij liepen achttien Nederlandse Shopify-shops na op 12 augustus 2026 en controleerden ze opnieuw op 18 augustus. Zeventien daarvan serveren een echt agents.md. Bij alle zeventien staat nog letterlijk de tekst die Shopify genereert.
De achttiende is een aliasdomein dat elk pad met de homepage beantwoordt. Daar staat dus helemaal geen agentbestand. Vandaar zeventien en niet achttien: we tellen alleen winkels waar echt iets te meten valt.
Ondertussen adviseren meerdere Nederlandse partijen een llms.txt als route naar AI-vindbaarheid. Google schrijft in de eigen documentatie dat je zulke bestanden niet nodig hebt voor Google Search. Het bestand dat wél actief aan koopagenten wordt uitgeserveerd blijft intussen op de fabrieksinstelling staan. Dat zijn twee verschillende bestanden en twee verschillende publieken, en ze worden constant door elkaar gehaald.
Wat staat er in dat bestand, en wie heeft het geschreven?
Een markdown-bestand op je eigen domein, geschreven voor machines in plaats van voor bezoekers. Je typt /agents.md achter je winkeladres en je leest het. Het is geen bèta, geen app en geen instelling die je hebt aangezet. Het staat er.
Shopify beschreef de aanpassing in een changelog van 28 mei 2026, in eigen woorden samengevat: je winkel bevat een standaard agents.md-bestand op /agents.md, en de paden /llms.txt en /llms-full.txt wijzen standaard naar diezelfde inhoud. In datzelfde bericht staat wat je eraan kunt doen. Je plaatst templates/agents.md.liquid onder Online Store, Themes, Edit code. Is er geen sjabloon voor een pad, dan valt het systeem terug op jouw agents.md-sjabloon, en daarna pas op de door Shopify gegenereerde versie.
Eén sjabloon bestuurt dus drie adressen. Wie zich zorgen maakt over llms.txt en llms-full.txt regelt die twee mee met het bestand waar het echt om gaat, en niet andersom.
De inhoud is geen technisch protocol maar gewone taal. Het bestand vertelt een agent wie de winkel is, welke adressen hij mag gebruiken om producten op te halen, hoe hij een winkelwagen aanmaakt en waar de beleidspagina's staan. Precies het soort informatie dat een verkoper anders in een gesprek zou geven. Alleen heeft niemand bij de winkel dit gesprek geschreven.
Achttien shops, twee meetdagen, nul eigen versies
Wij kozen achttien Nederlandse webshops en controleerden per shop de powered-by-header op een gewone GET-aanvraag. Alleen echte Shopify-winkels bleven over. Dat detail is belangrijker dan het lijkt: bij een HEAD-aanvraag ontbreekt die header bij een deel van de winkels, waardoor je ten onrechte concludeert dat het geen Shopify is.
Per shop haalden we /agents.md op en keken we naar drie dingen: de statuscode, het inhoudstype dat de server meestuurt, en de volgorde van de koppen in het bestand. Zeventien antwoorden met een geldige status en met markdown als inhoudstype, in bestanden van rond de vier kilobyte. Zestien van die zeventien hebben exact dezelfde koppenstructuur, in dezelfde volgorde, met alleen de merknaam en de eigen webadressen als verschil. De zeventiende wijkt op één punt af, en juist die afwijking is het bewijsstuk uit de volgende sectie.
Dit is een steekproef van achttien winkels op twee meetdagen. Het is geen uitspraak over de Nederlandse e-commerce als geheel, en de aantallen hieronder zijn aantallen en geen marktcijfer.
Wat we niet gemeten hebben: of een winkel elders wel iets aan agentcontext doet, bijvoorbeeld via een app of via extra vragen en antwoorden naast de gegenereerde set. Dat valt van buitenaf niet vast te stellen. Van buitenaf zie je ook niet of er een themabestand ligt, alleen wat de server uitserveert. Onze uitspraak is daarom smal en controleerbaar: op het bestand dat een agent als eerste opent, staat bij alle zeventien de gegenereerde tekst.
Waarom dit een generator is en geen redacteur: oilily mist één blok
Zeventien vrijwel identieke bestanden vragen om een controle op de afwijking, niet op de overeenkomst. Die afwijking zit bij één winkel.
Alle andere gemeten shops hebben in hun agents.md een blok met de kop ## Store Policies, met daaronder links naar hun beleidspagina's. Bij oilily.com ontbreekt dat blok volledig, gemeten op 12 en opnieuw op 18 augustus 2026. Niet leeg, niet met een tijdelijke tekst, gewoon weg. De reden is te controleren: die winkel heeft die beleidspagina's niet gepubliceerd.
Een redacteur die een merkdocument schrijft en geen beleidsteksten heeft, laat het kopje staan of schrijft er iets bij. Een generator die geen beleidsteksten vindt, laat het hele blok weg. De inhoud volgt de winkelgegevens, niet een mens.
Er is een tweede aanwijzing in dezelfde richting. Het bestand /llms.txt is bij de gemeten winkels op één zin na identiek aan /agents.md. Dat verschil is bij een byte-vergelijking te zien en het is bij elke winkel hetzelfde verschil. Twee bestanden die op één regel na gelijk zijn bij zeventien onafhankelijke merken zijn geen redactionele keuze. Dat is één sjabloon.
Een dag eerder deden we hetzelfde op een kleinere set van negen merken, met dezelfde uitkomst. Hoe de bredere verschuiving werkt, beschreven we eerder in agentic search en je webshop-verkeer. Wat een koopagent van je merk terugvertelt staat in merkpositionering voor AI-agenten.
llms.txt is geen SEO, en agents.md is geen llms.txt
Google negeert llms.txt. Dat maakt agents.md niet hetzelfde bestand met een andere naam.
In de eigen uitleg over generatieve AI en Search staat een lijst met dingen die je kunt negeren. Bovenaan die lijst staat, in eigen woorden samengevat: je hoeft geen nieuwe machineleesbare bestanden, AI-tekstbestanden, markup of markdown te maken om in Google Search te verschijnen, want Google Search gebruikt ze zelf niet. Verderop schrijft Google dat het aanmaken en onderhouden van zulke bestanden je zichtbaarheid en posities in Google Search niet schaadt en niet helpt, omdat Google Search ze negeert.
Google voegt er in dezelfde alinea iets aan toe dat vaak wegvalt. Het is prima om zo'n bestand aan te maken en te onderhouden voor andere diensten of systemen die het wél lezen. Google spreekt zich dus uit over Google Search, niet over alles wat een bestand kan doen. Precies daar zit de opening, en die loopt niet via Google.
In dezelfde lijst staan nog drie punten die je op dit moment in Nederlandse voorstellen ziet terugkomen: je content in kleine stukjes hakken voor AI, je teksten herschrijven speciaal voor AI, en extra schema-markup toevoegen omdat generatieve resultaten dat zouden eisen. Alle drie staan ze bij de dingen die je voor Google Search kunt laten liggen.
| Bestand | Wie leest het | Wat Google ermee doet | Wat het waard is |
|---|---|---|---|
llms.txt |
onbekend, wij hebben het niet gemeten | negeert het voor Search, expliciet | niets als losse vindbaarheidsdienst |
agents.md |
koopagenten die je winkel benaderen | negeert het als rankingsignaal | de eerste indruk van je merk bij een agent |
| productpagina en collectietekst | mensen én machines | gewoon SEO | het werk dat je toch al doet |
De praktische regel die daaruit volgt: koop nooit een llms.txt als SEO-dienst. Laat je agents.md ook niet op de fabrieksinstelling staan met het argument dat Google er niets mee doet, want Google is hier niet het publiek.
Shopify biedt je agents.md actief aan crawlers aan
Het bestand ligt niet in een la. Shopify neemt het op in een eigen sitemap en zet die bovenaan de sitemap-index.
Wij haalden het sitemap-indexbestand op van alle zeventien gemeten winkels, waaronder bocca.nl. Bij zeventien van de zeventien is de eerste vermelding sitemap_agentic_discovery.xml, boven producten, boven pagina's en boven collecties. Dat is een aparte sitemap die alleen voor agentontdekking bestaat.
Open je die sitemap, dan staat er precies één adres in: het agents.md-bestand van de winkel, met een verversingsfrequentie van wekelijks. Eén bestand, eigen sitemap, bovenaan de index. Of een crawler die volgorde iets waard vindt kunnen wij niet meten. Dat Shopify het bestand actief aanbiedt in plaats van het stil te laten staan, kunnen we wel meten, en dat is bij alle zeventien zo.
Diezelfde winkels laten ook zien wat er dan gevonden wordt. In het bestand staat een blok dat agenten aanraadt de Shop-skill te installeren, zodat ze direct kunnen kopen, prijzen kunnen vergelijken en bestellingen kunnen volgen. Daaronder de adressen van het Universal Commerce Protocol, met een stappenplan van ontdekken naar zoeken, winkelwagen, afrekenen en afronden. Onderaan een blok over het platform.
Dat is een compleet en goed geschreven document. Het is alleen niet van jou geschreven. Bij alle zeventien gemeten winkels staat er vijf keer een verwijzing naar de Shop-skill van het platform in.
Wat staat er nu over jouw merk in, en wat niet?
De koppenstructuur is bij zestien van de zeventien gemeten winkels gelijk. Dit is wat een agent leest, in deze volgorde.
| Blok | Waar het over gaat | Hoeveel gaat er over jouw merk |
|---|---|---|
| Shopping-assistenten | de Shop-skill als aanbevolen route om te kopen | niets |
| Commerce Protocol | de twee adressen waar de agent aanklopt en de stappen | niets |
| Read-Only Browsing | adressen om producten en collecties op te halen | niets |
| Store Policies | links naar je beleidspagina's | je adressen |
| Platform | Shopify, de protocolspecificatie, de Shop-skill | niets |
Bovenaan staat je merknaam en één zin dat dit beschrijft hoe agenten met jouw winkel omgaan. Dat is het. Er staat geen woord over waar je merk voor staat. Niets over hoe je assortiment is opgebouwd, of voor wie je maakt wat je maakt. En niets over waarom een koper bij jou zou moeten kopen in plaats van bij de winkel ernaast.
Vanuit Shopify is dat te begrijpen. Het platform kan niet raden wat jouw positionering is, dus schrijft het op wat het zeker weet: hoe de techniek werkt. Het probleem is dat de agent daarmee wél een antwoord heeft. Een koper die vraagt waarom dit merk, krijgt een document over afrekenprotocollen terug. Wat overblijft om op te kiezen: prijs, voorraad en levertijd. Dat is precies het mechanisme dat we beschreven in waarom goedkoop niet genoeg is.
De tekst die hier hoort bestaat meestal al. Je positionering staat in je merkdocument, je categorielogica staat in je collectiestructuur, je retourbelofte staat op je site. Het is geen schrijfopdracht vanaf nul. Het is een verhuizing naar een adres waar niemand keek.
Waarom bol.com en Amazon deze knop niet hebben
Dit is geen algemene e-commerce-ontwikkeling. Het is een keuze van één platform, en de marktplaatsen doen het omgekeerde.
Wij vroegen op 18 augustus 2026 de agentadressen van de grote Nederlandse marktplaatsen op. Bol geeft op /agents.md, op /llms.txt en op /.well-known/ucp een foutmelding terug. Coolblue weigert de aanvraag. Amazon gaat een stap verder: in de robots.txt van amazon.nl staan meer dan honderd regels met een user-agent, en de koopagenten van OpenAI, Anthropic, Google en Perplexity staan daar stuk voor stuk op Disallow: /.
| Je eigen Shopify-winkel | Bol en Amazon | |
|---|---|---|
| Agentlaag aanwezig | ja, open en aangeboden aan crawlers | nee of afgesloten |
| Wie schrijft het merkverhaal | het platform, tenzij jij het doet | niemand, de laag bestaat niet |
| Wat jouw merk draagt | agents.md, collecties, beleidsteksten | listingtitel, beeld, A-plus content |
| Wat het kost om het te vullen | een sjabloon in je thema | niet mogelijk |
Twee platforms, twee tegengestelde keuzes, dezelfde klant. Shopify duwt het merkverhaal van de verkoper naar buiten en vult het zelf in als de verkoper het niet doet. Amazon houdt het merkcontact bij zichzelf en laat de agents er niet in.
Voor wie beide kanalen draait telt dat als argument voor het eigen kanaal, en niet alleen omdat de marge daar hoger ligt. Op je eigen winkel bestaat een merklaag die je kunt vullen. Op de marktplaats bestaat hij niet, en blijft je listingcontent het enige signaal. Dat is dezelfde scheidslijn die we beschreven in waarom merken falen op marketplaces.
Wat wij nog niet weten
Wat vaststaat: het bestand bestaat op elke Shopify-winkel, Shopify documenteert zelf hoe je het overschrijft, de terugvalvolgorde staat in dezelfde changelog, en bij zeventien gemeten Nederlandse winkels heeft niemand het gedaan. Dat is allemaal van buitenaf te controleren en je kunt het zelf narekenen met een browser.
Wat níét vaststaat, en dat zijn twee dingen.
Ten eerste: of een eigen agents.md.liquid het door Shopify gegenereerde merkprofiel ook echt volledig vervangt op elk punt waar een agent kijkt. Dat is van buitenaf niet te meten. Daarvoor heb je een eigen Shopify-winkel nodig waar je het sjabloon plaatst en daarna terugleest wat er uitkomt. Die test hebben wij nog niet gedaan.
Ten tweede: hoe vaak koopagenten dit bestand daadwerkelijk ophalen. Wij zien dat Shopify het aanbiedt en dat het bij zeventien van de zeventien bovenaan de sitemap-index staat. Wij hebben geen crawllogboeken van andermans winkels, dus over de vraag hoe vaak het gelezen wordt doen wij geen uitspraak. Wie dat cijfer wél belooft, heeft het niet gemeten.
Wij zetten die testwinkel op voordat wij hier een factuur aan hangen. Niet omdat het waarschijnlijk misgaat, maar omdat het verschil tussen "de documentatie zegt dat het kan" en "wij hebben gezien dat het werkt" precies het verschil is waar een klant voor betaalt. In zes jaar Oase Creative en ruim tweehonderd klantbeoordelingen hebben wij dat verschil vaak genoeg stilzwijgend zien overslaan in voorstellen van anderen.
Wat je deze week zelf kunt controleren
Vier controles, allemaal in je browser. Je hebt geen tooling nodig en je verandert nog niets.
- Open
jouwdomein.nl/agents.md. Staat er iets? Dan draai je op Shopify en staat het bestand er. Lees de koppen van boven naar beneden. - Zoek naar jouw woorden. Kom je verder dan je merknaam en je beleidsadressen iets tegen dat jij hebt geschreven? Bij alle zeventien gemeten winkels was het antwoord nee.
- Open
jouwdomein.nl/sitemap.xml. Staatsitemap_agentic_discovery.xmlbovenaan? Bij zeventien van de zeventien gemeten winkels stond hij daar, dus de kans is groot dat je agentbestand actief wordt aangeboden aan crawlers. - Kijk naar je collectienamen. Dat zijn de weinige velden in de productlaag die jij bestuurt. Een collectie die "sale" of "nieuw" heet, zegt een agent vermoedelijk weinig. "Handgebrande single origin" doet dat wel.
De eerste twee laten zien wat er nu over je verteld wordt. Nummer drie laat zien dat het niet in een la ligt. En de vierde is het enige onderdeel dat je vanmiddag zelf kunt aanpassen zonder iemand te bellen.
Daarna komt het gewone werk. Beleidsteksten die volledig en feitelijk zijn, ook in het Engels. Collectiebeschrijvingen die je assortiment benoemen in plaats van je aanbiedingen. Dat laatste veld doet drie dingen tegelijk: het is de tekst op je categoriepagina, het is je meta description, en het is de context die een agent van je winkel binnenkrijgt. Hoe dat op de SEO-kant uitpakt staat in categoriepagina SEO op Shopify.
Hoe wij hiermee omgaan bij een Shopify-oplevering
Wij bouwen webshops vanuit de merkkant, niet vanuit de techniek. Aan het eind van elk traject ligt er een merkdocument met een positionering, een tone of voice en een assortimentslogica. Bij merken als Drivv en Maoo is dat document het uitgangspunt geweest voor alles wat daarna gebouwd is. Die documenten zijn tot nu toe altijd voor mensen geschreven.
Wat er nu bijkomt is één ding, en het is bewust klein gehouden. Bij een Shopify-bouw schrijven wij de merk-, categorie- en retourcontext vanaf nu ook in gewone taal weg voor de agentlaag. Het is dezelfde inhoud die we toch al maken, in een vorm die op een tweede adres past.
Wat wij nog niet doen is het sjabloon als losse dienst aanbieden bij bestaande shops, of er een dagtarief aan hangen. Dat gebeurt pas als onze eigen testwinkel heeft laten zien dat een eigen sjabloon het gegenereerde profiel echt vervangt. Eerst die test, dan de factuur. Dat is niet bescheidenheid maar volgorde.
Wat we ook niet doen is beloven dat je hierdoor in ChatGPT verschijnt. Dat kan niemand, en iedereen die het wel belooft heeft dezelfde documentatie gelezen als wij. Wat we wel doen is zorgen dat het document dat een agent als eerste over jouw winkel leest, van jou is. Dat is een kleine ingreep met een ongemakkelijk gevolg: op dit moment leest een agent bij zeventien van de zeventien gemeten Nederlandse merken hetzelfde verhaal.
Wil je weten wat er nu op jouw adres staat? Plan een gesprek en we openen het samen, live, terwijl je meekijkt. Werkt je vindbaarheid breder niet zoals je wilt, dan kijken we in een SEO-traject eerst naar de velden die drie dingen tegelijk doen.
Veelgestelde vragen
Wat is agents.md op een Shopify-winkel?
Een markdown-bestand dat elke Shopify-winkel automatisch uitserveert op /agents.md. Het beschrijft zichzelf als de canonieke, agent-gerichte beschrijving van de winkel. Shopify genereert de inhoud uit je winkelgegevens en je beleidspagina's. Je hoeft er niets voor aan te zetten en je kunt hem in je browser openen door /agents.md achter je domein te typen.
Kan ik agents.md op Shopify zelf overschrijven?
Ja. Shopify meldde op 28 mei 2026 dat je templates/agents.md.liquid onder Online Store, Themes, Edit code kunt plaatsen. Dat sjabloon bepaalt wat er op /agents.md staat en dient tegelijk als terugval voor /llms.txt en /llms-full.txt. Van de zeventien Nederlandse shops die wij maten serveerde er geen enkele iets anders dan de gegenereerde tekst.
Helpt agents.md of llms.txt mijn positie in Google?
Nee. Google schrijft in de eigen documentatie over AI en Search dat je geen machineleesbare bestanden, AI-tekstbestanden, markup of markdown hoeft te maken om in Google Search te verschijnen, en dat het aanmaken en onderhouden ervan je zichtbaarheid en posities daar niet helpt en niet schaadt. Google voegt eraan toe dat het prima is om zo'n bestand te hebben voor andere systemen die het wel lezen. Agent-gedreven aankopen lopen niet via Google Search.
Hoe weet ik of mijn agents.md nog de standaardtekst bevat?
Open jouwdomein.nl/agents.md en kijk naar de koppen. Staat er een blok over de Shop-skill, een blok over het Universal Commerce Protocol, een blok met alleen leesadressen en een blok over het platform, dan lees je de gegenereerde versie. Bij 16 van de 17 shops die wij maten stond exact die volgorde erin, met alleen de merknaam als verschil.
Hebben bol.com en Amazon ook een agents.md?
Nee. Bol geeft op /agents.md, /llms.txt en /.well-known/ucp een foutmelding terug. Amazon doet het omgekeerde van Shopify en sluit de koopagenten van OpenAI, Anthropic, Google en Perplexity uit in de eigen robots.txt. Op die kanalen blijft je listingcontent het enige merksignaal dat je zelf bestuurt.
