How to Block AI Bots on Shopify
Shopify's default robots.txt blocks nothing useful — AI crawlers have free run of your product pages and blog content. Here's how to lock them out in under 10 minutes.
Shopify robots.txt works differently from WordPress or static sites
You cannot upload a robots.txt file to Shopify. Instead, Shopify generates robots.txt dynamically from a Liquid template called robots.txt.liquid. To add AI bot blocking rules, you need to create this template in your theme code editor and add your Disallow rules there. No FTP, no server access needed — it's all inside the Shopify admin.
Quick block — the robots.txt.liquid rules
Add this inside your robots.txt.liquid template (after the existing default rules). See step-by-step instructions below.
User-agent: GPTBot Disallow: / User-agent: ChatGPT-User Disallow: / User-agent: OAI-SearchBot Disallow: / User-agent: ClaudeBot Disallow: / User-agent: anthropic-ai Disallow: / User-agent: Google-Extended Disallow: / User-agent: Bytespider Disallow: / User-agent: CCBot Disallow: / User-agent: PerplexityBot Disallow: / User-agent: meta-externalagent Disallow: / User-agent: Amazonbot Disallow: / User-agent: Applebot-Extended Disallow: / User-agent: xAI-Bot Disallow: / User-agent: DeepSeekBot Disallow: / User-agent: MistralBot Disallow: / User-agent: Diffbot Disallow: / User-agent: cohere-ai Disallow: / User-agent: AI2Bot Disallow: / User-agent: Ai2Bot-Dolma Disallow: / User-agent: YouBot Disallow: / User-agent: DuckAssistBot Disallow: / User-agent: omgili Disallow: / User-agent: omgilibot Disallow: / User-agent: webzio-extended Disallow: / User-agent: gemini-deep-research Disallow: /
This does NOT affect Googlebot, Bingbot, or other traditional search crawlers.
4 Methods to Block AI Bots on Shopify
robots.txt.liquid (Recommended)
Easy–MediumOnline Store → Themes → Edit code → Templates → robots.txt
Shopify generates robots.txt from a Liquid template. Edit it directly in the theme code editor. No FTP, no apps needed.
⚠ Available on all Shopify plans. Template is created per-theme — if you switch themes, re-add the rules.
noai meta tag in theme.liquid
EasyOnline Store → Themes → Edit code → Layout → theme.liquid
Add the noai meta tag inside the <head> section of theme.liquid to tell AI bots not to use your content, even when they do visit.
⚠ Belt-and-suspenders alongside robots.txt. Respecting noai is voluntary — bots may ignore it.
Cloudflare WAF Rules
IntermediateCloudflare Dashboard → Security → WAF → Custom Rules
Block at the network edge before requests hit Shopify. The only method that stops bots ignoring robots.txt (like Bytespider).
⚠ Requires Shopify to be proxied through Cloudflare. Free plan supports basic rules; Pro for advanced rate limiting.
Shopify Plus — IP Blocklist
AdvancedShopify Admin → Settings → IP Blocklist (Plus only)
Block specific IP ranges at the Shopify infrastructure layer. Useful for IP-based blocking when user agents are spoofed.
⚠ Shopify Plus only. AI crawler IP ranges change frequently — maintain the list or use WAF with user-agent matching instead.
Method 1: Edit robots.txt.liquid
This is the correct and officially-supported way to customise your Shopify robots.txt. The template approach means your changes survive theme updates — the file lives in your theme, not Shopify's platform layer.
- 1
In your Shopify admin, go to Online Store → Themes.
Make sure you're editing your live theme (or a duplicate if you want to test first).
- 2
Click the ⋮ (three dots) menu on your theme → Edit code.
- 3
In the left sidebar, look under Templates for
robots.txt.liquid.If it doesn't exist, click Add a new template, select robots.txt from the dropdown, and click Create template.
- 4
The default template will already contain Shopify's built-in rules (blocking /admin, /cart, etc.) using Liquid tags. Keep all of those — scroll to the end of the file.
- 5
Paste the AI bot rules from the Quick Block section at the end of the file, after all existing rules.
- 6
Click Save. Verify by visiting
yourdomain.com/robots.txt.You should see your GPTBot and ClaudeBot Disallow rules at the bottom of the file.
What the default template looks like
Shopify generates robots.txt using Liquid — here's what you'll find in a fresh template, and where to add your rules:
{% comment %}
Shopify generates robots.txt from this template.
Keep the default rules below — they block internal paths.
Add your custom AI bot Disallow rules after this block.
{% endcomment %}
{% for group in robots.default_groups %}
{% for rule in group.rules %}
User-agent: {{ rule.user_agent }}
{% for directive in rule.directives %}
{{ directive.directive }}: {{ directive.value }}
{% endfor %}
{% endfor %}
{% endfor %}
{# ← Paste your AI bot rules here #}Method 2: Add noai Meta Tags via theme.liquid
The noai and noimageai meta tags signal to AI crawlers not to use your page content for training — even if they visit. Add them globally via your theme's main layout file.
- 1In the theme code editor, open Layout → theme.liquid.
- 2Find the
</head>closing tag. - 3Paste the meta tag immediately before
</head>:
<meta name="robots" content="noai, noimageai">
To target only product pages (not your blog or homepage):
{% if template == 'product' or template == 'collection' %}
<meta name="robots" content="noai, noimageai">
{% endif %}Method 3: Cloudflare WAF (Stops robots.txt Violators)
robots.txt is a convention. Bytespider (ByteDance) has been documented ignoring it. If your Shopify store is proxied through Cloudflare, you can block AI bots at the network edge before they reach Shopify at all.
Prerequisites
Your Shopify store's domain must be proxied through Cloudflare (orange cloud icon in Cloudflare DNS settings). Free Cloudflare plan works for basic WAF rules.
- 1Go to your Cloudflare dashboard → your domain → Security → WAF → Custom Rules.
- 2Click Create rule.
- 3Set field: User Agent, operator: contains, then use OR to add each bot.
- 4Or use the Expression Editor for the full rule:
(http.user_agent contains "GPTBot") or (http.user_agent contains "ClaudeBot") or (http.user_agent contains "anthropic-ai") or (http.user_agent contains "Google-Extended") or (http.user_agent contains "Bytespider") or (http.user_agent contains "CCBot") or (http.user_agent contains "PerplexityBot") or (http.user_agent contains "meta-externalagent") or (http.user_agent contains "DeepSeekBot") or (http.user_agent contains "MistralBot") or (http.user_agent contains "xAI-Bot") or (http.user_agent contains "Diffbot") or (http.user_agent contains "cohere-ai") or (http.user_agent contains "AI2Bot") or (http.user_agent contains "DuckAssistBot") or (http.user_agent contains "omgilibot") or (http.user_agent contains "webzio-extended")
Set action to Block. Deploy. AI bots will receive 403 Forbidden regardless of robots.txt.
Which AI Bots Matter for Shopify Stores
What each bot is actually doing to your store content:
| Bot | Company | What it does to your store | Priority |
|---|---|---|---|
| CCBot | Common Crawl | Crawls product pages, blog posts, all public content | High — blocks 50+ AI models |
| GPTBot | OpenAI | Crawls store content for GPT-4 / ChatGPT training | High |
| ClaudeBot | Anthropic | Crawls store for Claude model training | High |
| Google-Extended | Trains Gemini on your product & blog content | High | |
| Bytespider | ByteDance | Known robots.txt violator — ignores blocks on some sites | Critical — use Cloudflare WAF |
| meta-externalagent | Meta | Trains Llama on web content including Shopify stores | High |
| Diffbot | Diffbot | Sells structured Shopify product/review data to AI labs | High — data broker |
| DeepSeekBot | DeepSeek | Chinese AI lab crawler, outside GDPR/US regulation | Medium |
| xAI-Bot | xAI (Grok) | Targets news & real-time content | Medium |
| PerplexityBot | Perplexity AI | AI search crawler — tradeoff: blocks Perplexity answers | Your call |
Will This Affect My Google Shopping Rankings?
Safe to block — zero impact
- ✓ Google Search rankings (Googlebot unaffected)
- ✓ Google Shopping (Googlebot-Image unaffected)
- ✓ Bing / Microsoft Shopping (Bingbot unaffected)
- ✓ Pinterest, Instagram crawls
- ✓ All traditional SEO
AI search visibility tradeoff
- ⚠ OAI-SearchBot → removes from ChatGPT Search
- ⚠ PerplexityBot → removes from Perplexity results
- ⚠ DuckAssistBot → removes from Duck.ai answers
- For most Shopify stores, AI search drives minimal revenue. Training bots are the real concern.
Shopify Plan Limitations
Basic, Shopify, and Advanced plans
Full robots.txt.liquid access. noai meta tags via theme.liquid. Cloudflare WAF works if you're on Cloudflare. No IP blocklist feature.
Shopify Plus
Everything above, plus IP blocklist in admin settings, full Storefront API access for programmatic robots.txt management, and headless deployments where you control the full server stack.
Shopify Starter / Lite (embedded stores)
No custom domain robots.txt control. If selling via an embedded Buy Button on another site, robots.txt on that site applies — not Shopify's. Block AI bots at the host site level instead.
Shopify Hydrogen (headless)
You control the full stack. Serve a static robots.txt from your Remix/Next.js frontend, add .htaccess or nginx blocks, use Cloudflare Workers for edge-level blocking. Same as any custom stack.
Verify Your Shopify Block Is Working
1. Check robots.txt is live
Visit https://yourstore.myshopify.com/robots.txt or your custom domain. You should see Disallow rules for GPTBot, ClaudeBot, and the others.
2. Google Search Console robots.txt Tester
In Google Search Console → Settings → robots.txt → Test. Enter GPTBot — verify it shows "Blocked".
3. Check your Shopify Analytics for bot traffic
Shopify Analytics → Reports → Visitors. Look for unusual traffic spikes from bot-like sessions. After blocking, bot visits should decline over 2–4 weeks as crawlers update their schedules.
4. Open Shadow scanner
The free site scanner checks your Shopify robots.txt, reports which AI bots are blocked vs. allowed, and gives you an AI readiness score.
Frequently Asked Questions
Can you edit robots.txt on Shopify?↓
Yes, but not by uploading a file. Shopify uses a Liquid template called robots.txt.liquid. Create it under Online Store → Themes → Edit code → Templates → Add template → robots.txt. Add your Disallow rules at the end of the generated template.
Does Shopify's default robots.txt block AI crawlers?↓
No. Shopify's default robots.txt only blocks internal paths like /admin, /cart, /checkout, and /account. All AI training crawlers — GPTBot, ClaudeBot, CCBot, Bytespider, Google-Extended — are allowed by default.
Will blocking AI bots affect my Google Shopping listings?↓
No. Google Shopping is indexed by Googlebot and Googlebot-Image. Blocking GPTBot (AI training) and Google-Extended (Gemini training) does not affect those crawlers. Your product listings will continue to appear in Shopping results normally.
My theme doesn't have a robots.txt.liquid file — what do I do?↓
Create one. In the theme code editor, click 'Add a new template', select 'robots.txt' from the dropdown, and click Create template. Shopify will pre-fill the default rules. Add your AI bot Disallow rules at the bottom.
Will my changes survive a theme update?↓
robots.txt.liquid lives in your theme files, so it survives theme updates as long as you update the same theme. If you switch to a completely different theme, you'll need to recreate the robots.txt.liquid in the new theme.
I switched themes — do I need to redo this?↓
Yes. robots.txt.liquid is per-theme. When you activate a new theme, you'll need to either create a new robots.txt.liquid template in it or copy your existing one over via the code editor.
Is your site protected from AI bots?
Run a free scan to check your robots.txt, meta tags, and overall AI readiness score.
Scan My Site Free →