facebookexternalhit: Meta's Preview Fetcher
What is facebookexternalhit?
facebookexternalhit generates the link preview card when someone shares your URL. It is not an AI crawler. facebookexternalhit builds link preview cards and collects nothing for AI, and Meta states it may bypass robots.txt during security or integrity checks.
Key facts
- facebookexternalhit is operated by Meta, and its purpose is preview: generates link previews when a URL is shared.
- The user agent for facebookexternalhit is documented by Meta and contains the token facebookexternalhit.
- The robots.txt token for facebookexternalhit is facebookexternalhit, and facebookexternalhit is documented as not complying with it.
- facebookexternalhit can send a visitor to your site, and facebookexternalhit attaches no citation when it uses your content.
Specification
| Operator | Meta |
|---|---|
| Purpose | PreviewGenerates link previews when a URL is shared. Not an AI crawler. Listed because it is frequently mistaken for one in log analysis. |
| Agent kind | FetcherFetches on a person's request. Appears in your logs. Request volume follows human activity. |
| User agent | facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php) |
| robots.txt token | facebookexternalhit |
| robots.txt compliance | Documented non-compliance |
| Verification | No published method, user agent is the only signal |
| Sends referral traffic | Yes |
| Attaches a citation | No |
| Status | Active |
| Legacy Kymo category | other |
| Source | Operator documentationhttps://developers.facebook.com/docs/sharing/webmasters/web-crawlers |
| Verified on |
What this looks like in your logs
203.0.113.42 - - [04/Aug/2026:09:14:07 +0000] "GET /pricing HTTP/1.1" 200 18432 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)"
The part that identifies the request is the token facebookexternalhit, inside the quoted user-agent field at the end of the line. Everything before it is the ordinary shape of a Common Log Format entry, and the address shown is a documentation address rather than one Meta uses.
What facebookexternalhit does not do
facebookexternalhit does not guarantee a visit, because a read only becomes a visit if a person clicks the citation that came out of it.
facebookexternalhit does not read your pages for any AI purpose, because a preview card is all it produces.
Meta publishes no crawl frequency for facebookexternalhit, so any schedule you read elsewhere is somebody's estimate rather than a documented figure.
How Kymo classifies it
Kymo files facebookexternalhit under Meta as other, classified from the HTTP request on the server rather than from anything running in a browser.
A hit from facebookexternalhit appears on the Crawlers dashboard under its own operator and is left out of the AI Visibility numbers, because it carries no answer a reader could arrive from.
Allow it or block it
Blocking it breaks link preview cards on Meta platforms. Meta documents that this crawler might bypass robots.txt when performing security or integrity checks, so a disallow is not guaranteed to stop it. Included here because it is routinely miscounted as AI traffic, which inflates AI crawler numbers.
| Allow it if | Block it if |
|---|---|
| You want a title, an image and a description to appear when someone shares your link on Meta. | You accept your links being shared as bare URLs with no card. |
robots.txt directives
Both blocks below address facebookexternalhit only. Rules for one token never apply to another, even from the same operator.
Allow facebookexternalhit
User-agent: facebookexternalhit Allow: /
Block facebookexternalhit
User-agent: facebookexternalhit Disallow: /
Questions
How do I know a request claiming to be facebookexternalhit is genuine?
Meta publishes no verification method for facebookexternalhit, so the user-agent string is the only signal available, and anyone can send one. Treat a claimed facebookexternalhit request as unproven.
Does blocking facebookexternalhit also block meta-externalagent?
No. facebookexternalhit and meta-externalagent are separate tokens, and Meta treats each one on its own. A rule naming facebookexternalhit leaves meta-externalagent free to carry on collecting your content for Meta model training. To stop that as well, name meta-externalagent in a rule of its own.
Will I see facebookexternalhit in Google Analytics?
No. Google Analytics runs a JavaScript tag in a visitor's browser, and facebookexternalhit reads your HTML and leaves without running any script. Server-side logging is the only way to record it.
Does facebookexternalhit send traffic back to my site?
Sometimes. facebookexternalhit can put your link in front of a person, but it attaches no citation of its own, so a visit is possible and credit is not.
Related crawlers
All AI crawlers and control tokens
See this bot in your own logs
facebookexternalhit reads your page to build a share card, and a browser tag never sees that request.
Kymo reads the HTTP request on your server, so a crawler that never runs JavaScript is still recorded. You see which bots reached the site, which pages they took and how often, next to your human traffic.
Start free → 14-day free trial. No card required.
No account yet? Run a free AI visibility check on your own site.