How to add LLMS.txt to your Shopify store
Shopify doesn't let you drop files at your domain root, so llms.txt needs a different approach. This guide covers both the manual workaround and the automatic method.
You search for how to add llms.txt to your Shopify store. The first three results say the same thing: create a file called llms.txt and place it at your domain root. You open your Shopify admin. You look for a place to upload files. You find it: Online Store > Content > Files. You upload the file. You check the URL. The file is now at cdn.shopify.com/s/files/1/0123/4567/files/llms.txt. Not yourstore.com/llms.txt.
Every guide you found was written for platforms with a writable server root. None of them mentioned Shopify. This is the one that does.
Why llms.txt matters for Shopify stores
AI models like ChatGPT, Perplexity, and Claude fetch llms.txt to understand what a store sells before deciding whether to recommend it. The file is a structured briefing: your store name, a one-line description, product categories with links, policy pages, and key product URLs. When a user asks an AI to recommend running shoes under $150, the models that know your catalog from an llms.txt file have a direct line to your products. The ones that don't have to crawl your site and piece it together on their own.
Crawling is slow and incomplete. AI models often miss pages behind JavaScript, skip pagination, and misread category structures. An llms.txt file hands them the map instead of making them draw it from memory.
Shopify is the platform most directly targeted by AI shopping integrations right now. ChatGPT Shopping has a native Shopify merchant program. Google AI Mode pulls product data from Shopify stores through Merchant Center. Perplexity Shopping indexes Shopify product pages. The infrastructure exists — llms.txt is how you make sure the AI models reading your store get accurate information about what you carry.
For background on what llms.txt is and how AI models use it, that post covers the specification in detail.
Why the standard method doesn't work on Shopify
The llms.txt specification says: place the file at yourstore.com/llms.txt. That instruction assumes you have a writable root directory on a server you control.
Shopify is a hosted platform. You don't have shell access to the server. You can't drop a file into a document root. When you upload through Shopify admin under Online Store > Content > Files, Shopify hosts that file on its own CDN. The URL you get back looks like cdn.shopify.com/s/files/1/XXXX/XXXX/files/llms.txt. That is a different domain entirely. AI models fetching yourstore.com/llms.txt find nothing.
This isn't a bug or an oversight in Shopify. It's how the platform is designed. Merchants get a managed storefront. The tradeoff is that you can't write arbitrary files to your store domain. That means the standard "upload a file" instruction for llms.txt doesn't apply here, and you need a different path.
The manual workaround: a page redirect
Shopify lets you create pages at yourstore.com/pages/[handle]. You can put your llms.txt content into a page body and then tell Shopify to redirect /llms.txt to that page. Here's how to set it up:
- In Shopify admin, go to Online Store > Pages and click Add page.
- Set the page title to something like "LLMS.txt" and paste your llms.txt content into the page body in plain text format.
- Set the URL slug to
llms-txtso the page lives at/pages/llms-txt. Save the page. - Go to Settings > URL Redirects and click Add URL redirect.
- Set "Redirect from" to
/llms.txtand "Redirect to" to/pages/llms-txt. Save.
This works. Requests to yourstore.com/llms.txt will redirect to your page. The content gets there. But there are things this approach doesn't handle well.
This workaround has one persistent problem: the content-type is text/html, not text/plain. Some AI crawlers check the content-type header and may reject the response as not conforming to the llms.txt specification.
Beyond content-type, the redirect adds an extra hop — every request to /llms.txt bounces through a 301 before reaching the actual content. The deeper problem: you have to update the page by hand whenever your products change. New collection, discontinued product, updated policy URL — all of it requires you to go back in and edit the page. For stores with moving catalogs, that maintenance overhead compounds fast.
If you need something live today and the content-type isn't a concern for your use case, this gets the job done. Just go in knowing it's a workaround, not a clean implementation.
The automatic method: app proxy
Shopify has a built-in mechanism for this situation. The app proxy system lets an installed app serve content on the store's own domain, under a path like yourstore.com/apps/[app-handle]/[path]. Shopify proxies the request from its own domain, so the content-type header is controlled by the app, not by Shopify's page renderer.
AgentReadyHQ uses this to publish your llms.txt at yourstore.com/apps/agentready/llms.txt. The file serves as text/plain. No redirect, no hop, no HTML wrapper.
The content is generated from your live catalog. The app pulls your products, collections, and policy pages from the Shopify Admin API and builds the file from that data. When you add a collection or update a product description, the file reflects those changes — you don't touch it manually.
Steps to publish
- Install the app from apps.shopify.com/agentready.
- Open the app in your Shopify admin and go to the LLMS.txt tab.
- Click Generate. The app reads your catalog and drafts the file. You can review the content before publishing.
- Click Publish. The file goes live at
yourstore.com/apps/agentready/llms.txt.
What the generated file looks like
Here's an example output for a fictional outdoor gear store:
# Summit Outfitters > Technical hiking and camping gear for backcountry travel. Based in Bozeman, MT. ## Products - [Hiking Boots](https://example-store.myshopify.com/collections/hiking-boots): Waterproof boots for men and women from Salomon, Merrell, and La Sportiva. - [Backpacks](https://example-store.myshopify.com/collections/backpacks): Daypacks and expedition packs from 20L to 80L. - [Tents](https://example-store.myshopify.com/collections/tents): Three-season and four-season shelters for one to four people. - [Apparel](https://example-store.myshopify.com/collections/apparel): Base layers, insulation, and rain shells. ## Policies - [Shipping](https://example-store.myshopify.com/policies/shipping-policy): Free shipping on orders over $99. Standard 3-5 days. - [Returns](https://example-store.myshopify.com/policies/refund-policy): 60-day returns on unused items. - [Privacy](https://example-store.myshopify.com/policies/privacy-policy): Privacy policy and data handling.
The file follows the llms.txt specification: H1 for the store name, a blockquote for the one-line description, H2 sections for Products and Policies, and markdown links with short descriptions for each entry. AI models parsing this get your catalog structure, direct links to collection pages, and your policy URLs in a single request.
Add LLMS.txt to your Shopify store in 2 minutes
The AgentReadyHQ app generates your file from your live product catalog and publishes it at yourstore.com/apps/agentready/llms.txt. No file uploads, no theme edits.