Safe Official docs Social Media Bots

Twitterbot

Operated by X (Twitter)

Quick Facts

User-Agent:
Twitterbot
Category:
Social Media Bots
Operator:
X (Twitter)
Safety:
Safe
Blocking Impact:
Varies - Evaluate before blocking
SEO Impact Score:
0/10
Official docs:
developer.x.com

Confirmed by the operator

X (Twitter) names Twitterbot on its own documentation page, linked above. The token, purpose and robots.txt behaviour on this profile come from that page, re-checked on October 19, 2026.

What is Twitterbot?

Twitterbot (now X) fetches content to generate 'Cards' (previews) when links are posted on the X platform.

Twitterbot (now X) fetches content to generate 'Cards' (previews) when links are posted on the X platform.
Twitterbot is operated by to generate rich link previews when URLs are shared on their platform. It sends GET requests to your URL, reads <meta property="og:..."> and <meta name="twitter:..."> tags, and caches the result. Blocking Twitterbot means all links to your domain shared on appear as raw text without thumbnail, title, or description. This can reduce CTR from social referrals but has zero SEO impact.

What happens if you block Twitterbot?

❓ Impact Unknown - The SEO consequences of blocking Twitterbot are not fully documented. Before blocking, check your analytics to confirm whether this bot generates referral traffic, review your server logs for crawl frequency, and test in a staging environment if possible.
Generally safe to allow; provides legitimate crawling value.

How to block Twitterbot with robots.txt

<code>User-agent: Twitterbot</code> - Matching is case-insensitive. Robots.txt is fetched from the root of each subdomain separately.

Block completely (robots.txt)
User-agent: Twitterbot Disallow: /
Allow all (robots.txt)
User-agent: Twitterbot Allow: /
Block private only (robots.txt)
User-agent: Twitterbot Disallow: /private/ Disallow: /api/ Disallow: /admin/ Allow: /
Nginx server block
# Nginx: Hard-block Twitterbot if ($http_user_agent ~* "Twitterbot") { return 403 "Bot blocked"; }
Apache .htaccess
# Apache: Hard-block Twitterbot SetEnvIfNoCase User-Agent "Twitterbot" bad_bot Order Allow,Deny Allow from all Deny from env=bad_bot
Meta robots tag
<meta name="robots" content="noindex, nofollow">
X-Robots-Tag header
X-Robots-Tag: noindex, nofollow

Is Twitterbot safe to allow?

Yes, Twitterbot is a safe and legitimate crawler. It is operated by , which publicly documents its crawler at an official URL and follows the Robots Exclusion Protocol (RFC 9309). The user-agent string Twitterbot is verifiable via reverse-DNS lookup on the crawling IP addresses. You can safely allow it unless you have a specific reason to block (e.g., AI training opt-out or SEO tool visibility).
Verify by reverse-DNS lookup: legitimate Twitterbot requests resolve to 's domain.

What does Twitterbot do?

Understanding Twitterbot's purpose helps you decide whether to allow or block it.

  • Generates link previews for social media shares
  • Fetches Open Graph and Twitter Card metadata
  • Creates rich snippets when links are posted
  • Validates and displays website thumbnails
  • Improves user experience on social platforms

Twitterbot in context

Twitterbot is a utility crawler operated by X (Twitter). In plain terms, it fetches a page to build a link preview when someone shares it. Our database files it under social preview bots and ranks it Tier 5, low-priority crawlers with limited upside for most sites. 8 of the 9 social preview bots in our database share this tier.

Its safety rating is safe and its blocking impact is not documented. So the decision about Twitterbot rests on what you want from X (Twitter), not on its behaviour. How we rate safety and impact.

How site owners treat Twitterbot

Our robots.txt study of the Tranco top 10,000 did not track Twitterbot as a named token, so we do not publish an adoption figure for it. If you run a large site, your own logs are the best evidence of how often it visits.

Does it follow robots.txt?

Twitterbot's operator does not clearly document how it treats robots.txt. Write the Twitterbot rule anyway, then confirm in your logs that its requests stop.

X (Twitter) crawlers and close alternatives

X (Twitter) runs only this one crawler in our database, so a single User-agent: Twitterbot group controls everything X (Twitter) fetches through it.

Other social preview bots that do the same job (fetches a page to build a link preview when someone shares it) include FacebookBot from Meta, facebookexternalhit from Meta, LinkedInBot from LinkedIn, Pinterestbot from Pinterest, Quora-Bot from Quora, Slackbot from Slack. Deciding about Twitterbot is usually a decision about the whole group, so check how your file treats these too.

We first recorded Twitterbot on March 17, 2026. X (Twitter) documents it on developer.x.com, and we recheck that page before each release.

Which rule Twitterbot actually follows

Twitterbot reads exactly one group in robots.txt, the most specific one that names Twitterbot, and never combines rules across groups. This short file shows the trap:

User-agent: *
Disallow: /private/

User-agent: Twitterbot
Disallow: /drafts/
  1. Find the group. Twitterbot looks for a group naming Twitterbot. One exists, so it ignores User-agent: * completely.
  2. Apply only that group. It is refused /drafts/ and nothing else.
  3. The surprise. /private/ is open to Twitterbot, because that rule lives in the * group it no longer reads. To keep it out of both, repeat Disallow: /private/ inside its own group.
Test yourself: does a rule under User-agent: * apply to Twitterbot if the file also has a User-agent: Twitterbot group?

No. Once a group names it, Twitterbot reads only that group. Put every rule you want it to follow inside its own group.

Test yourself: will blocking Twitterbot remove your pages from AI answers?

Often, yes. Twitterbot is a utility crawler, so pages it cannot fetch can drop out of the answers or results it supports.

Test yourself: is User-agent: twitterbot the same as User-agent: Twitterbot?

Yes. RFC 9309 makes user-agent matching case-insensitive. Paths are a different story: Disallow: /Blog/ does not block /blog/.

Related: how AI engines choose their sources

Should you allow Twitterbot? Decide by situation

Recommended setting for Twitterbot by type of site
If you are...Recommended setting
You publish content and want AI answers to cite itLow stakes either way. It does not decide whether AI answers cite you.
You license content and want to stop AI trainingBlocking it does not stop training, because Twitterbot is a utility crawler. Block the operator's training crawler instead.
You run an online shopAllow it unless your logs show it is costly.
Your server is under load from botsRate-limit before blocking. It is rated safe in our database.

Check Twitterbot on your own site

  1. Open /robots.txt on your domain and search for Twitterbot. If it is not named, it follows User-agent: *.
  2. List the Disallow lines in the group Twitterbot follows and test your key URLs against them; the longest match wins, and Allow wins a tie.
  3. Look beyond the file. A firewall or bot manager can refuse Twitterbot even when robots.txt allows it, and that never shows in the file.
  4. Run our AI crawler tester to see how Twitterbot and every other crawler we track are treated in one pass, including firewall refusals.

Common mistakes with Twitterbot

The errors we see most often with Twitterbot in the files and firewalls we test:

  1. Treating Twitterbot as an AI or search crawler. Blocking it has little effect on visibility; decide based on load and what it does with your data.
  2. Relying on robots.txt alone when Twitterbot is rated caution or aggressive. Back the rule with a server-side block.
  3. Blocking Twitterbot by IP alone. Ranges change; match the token and verify with logs.

All three hide inside a file that looks correct, so check Twitterbot from outside after every change.

Spotting Twitterbot in your logs

robots.txt says what Twitterbot may do; your access logs show what it actually did.

Count requests

On a server with standard Nginx or Apache logs, this counts matching requests per day (adjust the log path for your host):

grep -iE "Twitterbot" /var/log/nginx/access.log \
  | awk '{print $4}' | cut -d: -f1 | sort | uniq -c

And this shows which paths it requested most, which is the quickest way to see whether your Disallow lines are being respected:

grep -iE "Twitterbot" /var/log/nginx/access.log \
  | awk '{print $7}' | sort | uniq -c | sort -rn | head -20

Check the requests are genuine

Anyone can send the Twitterbot user-agent, so confirm the source before acting on a match:

  • Twitterbot: we hold no published IP list, so use reverse DNS where the operator documents a hostname and treat an unverifiable Twitterbot request with caution.

Frequently Asked Questions

What is the official user-agent string for Twitterbot?
The official user-agent string for Twitterbot is: Twitterbot. This is the exact string you must use in robots.txt, Nginx, Apache, or Cloudflare firewall rules to target this bot. User-agent matching in robots.txt is case-insensitive, but the string must be spelled correctly. You can verify that a request genuinely comes from Twitterbot by performing a reverse-DNS lookup on the source IP - legitimate bots resolve back to their operator's domain.
Is Twitterbot safe?
Yes, Twitterbot is a safe and legitimate crawler. It is operated by , which publicly documents its crawler at an official URL and follows the Robots Exclusion Protocol (RFC 9309). The user-agent string Twitterbot is verifiable via reverse-DNS lookup on the crawling IP addresses. You can safely allow it unless you have a specific reason to block (e.g., AI training opt-out or SEO tool visibility).
Will blocking Twitterbot hurt my SEO?
❓ Impact Unknown - The SEO consequences of blocking Twitterbot are not fully documented. Before blocking, check your analytics to confirm whether this bot generates referral traffic, review your server logs for crawl frequency, and test in a staging environment if possible.
How do I block Twitterbot in robots.txt?
Add the following lines to your /robots.txt file:
User-agent: Twitterbot
Disallow: /

This instructs Twitterbot not to crawl any path on your site. The Disallow: / directive covers the entire domain including subfolders. To only block specific sections, replace / with the path (e.g., Disallow: /blog/). Note: robots.txt is publicly readable - any bot or human can inspect it at yourdomain.com/robots.txt.
Does Twitterbot respect robots.txt?
Yes - Twitterbot is a well-behaved bot operated by X (Twitter). It fetches and parses /robots.txt before crawling any page, following RFC 9309.
How do I verify if Twitterbot is crawling my site?
Search your web server access logs for the string Twitterbot (case-insensitive grep: grep -i "Twitterbot" /var/log/nginx/access.log). You can also check Google Search Console → Coverage → Crawl Stats for Googlebot variants. For Twitterbot specifically, filter by user-agent in your log analysis tool (GoAccess, AWStats, etc.).
What is the crawl frequency of Twitterbot?
Twitterbot crawls at a moderate rate. If you notice excessive traffic in your logs, you can add a Crawl-delay directive:
User-agent: Twitterbot
Crawl-delay: 10
(10 second delay between requests).
Can I block Twitterbot from specific pages only?
Yes. Instead of a global Disallow: / you can restrict Twitterbot to specific paths:
User-agent: Twitterbot
Disallow: /private/
Disallow: /staging/
Allow: /

This allows Twitterbot everywhere except the listed paths. Path matching in robots.txt uses prefix matching - Disallow: /private/ blocks /private/page.html but NOT /public/private/.
Why is my link preview broken when shared on 's platform?
If links to your site appear without a preview image or title on , it's likely because:
1. Twitterbot (Twitterbot) is blocked in your robots.txt.
2. Your Open Graph meta tags are missing or malformed.
3. 's cache is stale - request a refresh using 's debugger tool.
Fix: Remove any block rule for Twitterbot and ensure your pages include <meta property="og:title">, og:description, and og:image.
WhatsApp us