AI crawler profile
What is PetalBot? How to allow or block Huawei's crawler
User-agent string to match in robots.txt and server logs: PetalBot
Operator
Huawei
Purpose
Training + search
robots.txt
Respects robots.txt
Official docs
PetalBot (operated by Huawei subsidiary Aspiegel) crawls for Petal Search — the default search on Huawei devices — and its collected content also supports Huawei's AI features. Like Amazonbot, one user agent serves both search visibility and AI use, so blocking is an all-or-nothing decision for the Huawei ecosystem.
Does PetalBot respect robots.txt?
Documented by Aspiegel/Huawei with published IP ranges; states it respects robots.txt and crawl-delay.
Verify it's really PetalBot
Huawei publishes no IP-range file for PetalBot, so it can only be identified by its user-agent string — which anything can send. Treat traffic claiming this agent as unverified, and prefer a reverse-DNS check where the operator documents one before acting on it.
Block PetalBot with robots.txt
User-agent: PetalBot Disallow: /
Explicitly allow PetalBot
User-agent: PetalBot Allow: /
Block PetalBot at the server or CDN
robots.txt is the right first step for PetalBot, since Huawei honors it. Use these only if you want the block enforced rather than requested — for example to stop agents spoofing the user agent. Matching on the user-agent string still trusts a self-declared header — and no IP-range file exists for this agent, so treat it as best-effort.
if ($http_user_agent ~* "PetalBot") {
return 403;
}RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} PetalBot [NC]
RewriteRule .* - [F,L](http.user_agent contains "PetalBot")
Find PetalBot in your server logs
grep -i "PetalBot" /var/log/nginx/access.log | wc -l
Should you block PetalBot?
It's a genuine trade-off: PetalBotserves both search-style features (which send you visibility) and model training (which you may want to opt out of). Since one user agent controls both, you can't split the decision — weigh which matters more using our blocking decision guide.
Check and monitor PetalBot on your site
- AI Crawler Access Checker — see whether your current robots.txt allows or blocks PetalBot.
- robots.txt Generator for AI Bots — build a robots.txt with per-bot rules for all 28 known AI crawlers.
- AI Bot Log Analyzer — paste server logs and count real PetalBot hits, entirely in your browser.
Related reading
- List of AI crawlers and their user agents — how PetalBot fits among every other AI crawler, in one table.
- Can AI crawlers execute JavaScript? — whether PetalBot sees content your site renders client-side.
- Should you block AI bots? — the full decision framework for Huawei and the rest.
Frequently asked questions
What is PetalBot?
PetalBot is Huawei's crawler serving both AI search features and model training. Huawei's Petal Search crawler, also feeding its AI products.
Does PetalBot respect robots.txt?
Documented by Aspiegel/Huawei with published IP ranges; states it respects robots.txt and crawl-delay.
How do I block PetalBot?
Add "User-agent: PetalBot" followed by "Disallow: /" to your robots.txt file. The change takes effect the next time the bot fetches your robots.txt.
Does blocking PetalBot hurt my Google rankings?
No. PetalBot is separate from Googlebot, which handles Google Search indexing. Blocking PetalBot has no effect on your traditional search rankings, but it does remove your pages from the AI answers Huawei's assistant serves to its users.
How can I tell if PetalBot is crawling my site?
Search your server access logs for the string "PetalBot" — for example: grep -i "PetalBot" /var/log/nginx/access.log | wc -l. Our free AI Bot Log Analyzer does this in your browser: paste a log file and it counts hits per AI crawler, including PetalBot, with per-path breakdowns.
How do I use PetalBot?
You don't — PetalBot isn't a tool you run. It's Huawei's own crawler, operated by Huawei, that visits your site from their infrastructure. The only control you have over it is whether you allow or block it, via robots.txt or a server rule. If you're looking to crawl other sites yourself, you'd write your own crawler or use a crawling library; sending "PetalBot" as your user agent would be impersonating Huawei.
Does PetalBot respect crawl-delay?
Almost certainly not. Crawl-delay was never part of the original robots.txt specification — Google has publicly said it ignores the directive, and the AI crawlers that model their parsers on Google's do the same. Huawei publishes no position on crawl-delay for PetalBot, so treat it as unsupported. If PetalBot is hitting your site harder than you want, rate-limit it at the server or CDN instead: a Cloudflare rate-limiting rule or an nginx limit_req zone matched on the user agent will actually be enforced, whereas a crawl-delay line is only a request that this agent likely never reads.
Why is PetalBot ignoring my robots.txt?
Huawei states PetalBot honors robots.txt, so if you are still seeing hits the cause is usually one of four things rather than the bot misbehaving. First, robots.txt is cached — Huawei may be working from a copy fetched up to 24 hours before your change. Second, the rule may not match: robots.txt user-agent matching is on a prefix of the token, and a typo or a trailing character breaks it silently. Third, the block may sit under a different user-agent group than the one this bot reads, since a bot obeys only the most specific group that matches it, not the wildcard group as well. Fourth, the traffic may be something else sending PetalBot as its user agent, which anything can do.
Does PetalBot execute JavaScript?
Treat it as no unless Huawei says otherwise. Rendering JavaScript costs an order of magnitude more than fetching HTML, and most AI crawlers — unlike Googlebot, which runs a full headless Chrome — read the raw HTML response and stop there. The practical consequence: anything your page loads client-side after the initial response is likely invisible to PetalBot. If your main content is client-rendered, server-render it or pre-render it so the text exists in the first response.
What are PetalBot's IP ranges?
Huawei publishes no IP-range file for PetalBot, which means there is no way to verify a request really came from them. Any traffic claiming this user agent should be treated as unverified. If you need certainty, block on the user agent and accept that you may be blocking impostors rather than the real crawler — and note that the absence of published ranges is itself a signal about how seriously the operator treats crawler transparency.
How often does PetalBot crawl my site?
There is no published schedule, and no operator commits to one. Training crawlers like PetalBot typically sweep in bursts rather than at a steady rate — quiet for weeks, then hundreds of requests over a day or two as a collection run reaches your domain. Larger and more-linked sites are revisited more often. The only way to know for your own site is to measure it: grep your access log for the user agent, or paste the log into our AI Bot Log Analyzer, which breaks hits down by date and path in your browser.
Where is the official Huawei documentation for PetalBot?
Huawei publishes it at https://aspiegel.com/petalbot. That page is the authoritative source for the user-agent string and Huawei's stated crawling policy.
Other AI crawlers
- PanguBotAssociated with training Huawei's PanGu large language models.
- GoogleOtherGoogle's generic crawler for research and internal product uses.
- DiffbotExtracts structured data from pages for customers, including AI companies.
- AmazonbotCrawls content for Amazon's search and AI products, including Alexa.
- TimpibotCrawler for Timpi's decentralized search index.
- GPTBotCrawls content to train OpenAI's models.
Part of our directory of every known AI crawler, refreshed monthly. Last verified: 2026-09-13.