Bots by company
Meta bots and crawlers
Meta runs Facebook, Instagram, WhatsApp and Meta AI. It operates crawlers for AI training, Meta AI search, link previews and ads.
Meta bots at a glance
- Meta runs 8 bots listed in this directory.
- They belong to: AI Training Crawlers, Social and Messaging Previews, Ads and Platform Fetchers, AI Assistant Fetchers, AI Search Crawlers.
- Each Meta bot has its own robots.txt token, so each purpose can be allowed or blocked separately.
- Website: www.meta.com
Every Meta bot
| Bot | Group | Purpose | robots.txt | For GEO |
|---|---|---|---|---|
| FacebookBot | AI Training Crawlers | AI trainingReported | Yes | Your choice |
| FacebookExternalHit | Social and Messaging Previews | Link previewOfficial docs | Yes | Allow |
| Facebot | Social and Messaging Previews | Link previewReported | Not documented | Allow |
| Meta-ExternalAds | Ads and Platform Fetchers | AdsOfficial docs | Yes | Allow |
| Meta-ExternalAgent | AI Training Crawlers | AI trainingOfficial docs | Yes | Your choice |
| Meta-ExternalFetcher | AI Assistant Fetchers | AI assistantOfficial docs | Not for user-requested fetches | Allow |
| Meta-WebIndexer | AI Search Crawlers | AI searchOfficial docs | Yes | Allow |
| Social and Messaging Previews | Link previewReported | Not documented | Allow |
Block or allow all Meta bots
The rules below name every Meta token in this directory. To block training but keep AI search, delete the search and assistant tokens from the block rule.
robots.txt: block
# Block all Meta bots
User-agent: FacebookBot
User-agent: facebookexternalhit
User-agent: Facebot
User-agent: meta-externalads
User-agent: meta-externalagent
User-agent: meta-externalfetcher
User-agent: meta-webindexer
User-agent: WhatsApp
Disallow: /robots.txt: allow
# Allow all Meta bots
User-agent: FacebookBot
User-agent: facebookexternalhit
User-agent: Facebot
User-agent: meta-externalads
User-agent: meta-externalagent
User-agent: meta-externalfetcher
User-agent: meta-webindexer
User-agent: WhatsApp
Allow: /robots.txt: partial
# Keep all Meta bots out of private areas only
User-agent: FacebookBot
User-agent: facebookexternalhit
User-agent: Facebot
User-agent: meta-externalads
User-agent: meta-externalagent
User-agent: meta-externalfetcher
User-agent: meta-webindexer
User-agent: WhatsApp
Disallow: /wp-admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Allow: /Nginx
# Nginx: return 403 to all Meta bots
if ($http_user_agent ~* "(FacebookBot|facebookexternalhit|Facebot|meta\-externalads|meta\-externalagent|meta\-externalfetcher|meta\-webindexer|WhatsApp)") {
return 403;
}Apache
# Apache .htaccess: return 403 to all Meta bots
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (FacebookBot|facebookexternalhit|Facebot|meta\-externalads|meta\-externalagent|meta\-externalfetcher|meta\-webindexer|WhatsApp) [NC]
RewriteRule .* - [F,L]Cloudflare WAF
# Cloudflare > Security > WAF > Custom rule, action: Block
(http.user_agent contains "FacebookBot") or (http.user_agent contains "facebookexternalhit") or (http.user_agent contains "Facebot") or (http.user_agent contains "meta-externalads") or (http.user_agent contains "meta-externalagent") or (http.user_agent contains "meta-externalfetcher") or (http.user_agent contains "meta-webindexer") or (http.user_agent contains "WhatsApp")See which of these bots actually reach your website
The AI Log File Analyzer by Justin Hà counts visits from GPTBot, ClaudeBot, PerplexityBot and other AI crawlers in your server log, for free. The GEO Technical Package sets up robots.txt, llms.txt and crawler access for AI search.