Safe Official docs AI & LLM Bots

Keenable user fetch

Operated by Keenable

Quick Facts

User-Agent:
Keenable-User
Category:
AI & LLM Bots
Operator:
Keenable
Safety:
Safe
Blocking Impact:
Low - No effect on Google or Bing rankings
SEO Impact Score:
1/10
Official docs:
app.keenable.ai

Confirmed by the operator

Keenable names Keenable-User 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 Keenable user fetch?

Keenable-User fetches one page when a person, or an agent acting for one, asks for it. Keenable says it does not crawl the web automatically.

It identifies itself with the token Keenable-User. Keenable documents it at app.keenable.ai.

What happens if you block Keenable user fetch?

Blocking it stops Keenable fetching your pages on request. No effect on Google or Bing.
Generally safe to allow; it only fetches pages a person asked for.

Want to see whether Keenable user fetch actually visits you? Read how do I monitor AI bot traffic to my website?

How to block Keenable user fetch with robots.txt

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

Block completely (robots.txt)
User-agent: Keenable-User Disallow: /
Allow all (robots.txt)
User-agent: Keenable-User Allow: /
Block private only (robots.txt)
User-agent: Keenable-User Disallow: /private/ Disallow: /api/ Disallow: /admin/ Allow: /
Nginx server block
# Nginx: Hard-block Keenable user fetch if ($http_user_agent ~* "Keenable-User") { return 403 "Bot blocked"; }
Apache .htaccess
# Apache: Hard-block Keenable user fetch SetEnvIfNoCase User-Agent "Keenable-User" 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 Keenable user fetch safe to allow?

Yes. Keenable user fetch is a documented bot: Keenable publishes a page that names it and explains what it does.
Keenable publishes the IP addresses for Keenable-User at app.keenable.ai/bot/keenable-user.json. A request that names Keenable-User from another address is not from Keenable.

What does Keenable user fetch do?

From Keenable's own documentation.

  • Keenable-User fetches one page when a person, or an agent acting for one, asks for it.
  • Blocking it stops Keenable fetching your pages on request. No effect on Google or Bing.

Keenable user fetch in context

Keenable user fetch is a user-triggered agent operated by Keenable. In plain terms, it fetches a page when a person asks an assistant or app to open it. Our database files it under AI and LLM crawlers and ranks it Tier 3, mid-priority crawlers with a clear purpose but a smaller audience. 15 of the 104 AI and LLM crawlers in our database share this tier.

Its safety rating is safe and its blocking impact is low. So the decision about Keenable user fetch rests on what you want from Keenable, not on its behaviour. How we rate safety and impact.

How site owners treat Keenable user fetch

Our robots.txt study of the Tranco top 10,000 did not track Keenable-User 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?

Keenable user fetch's operator says it follows robots.txt, so a correctly written Keenable user fetch group is enough to control it.

Keenable crawlers and close alternatives

Keenable user fetch is one of 2 Keenable crawlers in our database. A User-agent: Keenable-User group controls Keenable user fetch only; the other Keenable tokens below need their own lines.

  • Keenable-User: this crawler (Tier 3)
  • KeenableBot: Keenable Search, builds a search or answer index (Tier 2)

To give Keenable user fetch the same answer as its siblings, stack User-agent: Keenable-User with their lines above one set of rules; to treat Keenable user fetch differently, give it its own group.

Other AI and LLM crawlers that do the same job (fetches a page when a person asks an assistant or app to open it) include ChatGPT Agent from OpenAI, ChatGPT Operator from OpenAI, ChatGPT-User from OpenAI, ChatGPT-User/2.0 from OpenAI, Claude-SearchBot from Anthropic, Claude-User from Anthropic. Deciding about Keenable user fetch is usually a decision about the whole group, so check how your file treats these too.

We first recorded Keenable-User on October 19, 2026. Keenable documents it on app.keenable.ai, and we recheck that page before each release.

Which rule Keenable user fetch actually follows

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

User-agent: *
Disallow: /private/

User-agent: Keenable-User
Disallow: /drafts/
  1. Find the group. Keenable user fetch looks for a group naming Keenable-User. 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 Keenable user fetch, 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 Keenable user fetch if the file also has a User-agent: Keenable-User group?

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

Related: how AI engines choose their sources

Test yourself: will blocking Keenable user fetch remove your pages from AI answers?

Often, yes. Keenable user fetch is a user-triggered agent, so pages it cannot fetch can drop out of the answers or results it supports.

Test yourself: is User-agent: keenable-user the same as User-agent: Keenable-User?

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

Should you allow Keenable user fetch? Decide by situation

Recommended setting for Keenable user fetch by type of site
If you are...Recommended setting
You publish content and want AI answers to cite itAllow it. Keenable user fetch fetches pages for answers, so blocking it can remove you from them.
You license content and want to stop AI trainingBlocking it does not stop training, because Keenable user fetch is a user-triggered agent. Block the operator's training crawler instead.
You run an online shopAllow it on product and category pages, which are the pages shoppers ask assistants about.
Your server is under load from botsRate-limit before blocking. It is rated safe in our database.

Check Keenable user fetch on your own site

  1. Open /robots.txt on your domain and search for Keenable-User. If it is not named, it follows User-agent: *.
  2. List the Disallow lines in the group Keenable user fetch 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 Keenable user fetch even when robots.txt allows it, and that never shows in the file.
  4. Run our crawler access checker to see how Keenable user fetch and every other crawler we track are treated in one pass, including firewall refusals.

Common mistakes with Keenable user fetch

The errors we see most often with Keenable user fetch in the files and firewalls we test:

  1. Assuming a robots.txt rule will stop Keenable user fetch. User-triggered fetches act for a person, and some operators say robots.txt may not apply to them. Check the operator's statement above.
  2. Blocking Keenable user fetch as if it were a bulk crawler. It fetches one page because a person asked; blocking it means that person's assistant cannot read your page.
  3. Counting Keenable user fetch visits as crawl volume. Each request maps to a real user question, which makes the paths it requests a useful signal of what people ask about you.

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

Spotting Keenable user fetch in your logs

robots.txt says what Keenable user fetch 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 "Keenable-User" /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 "Keenable-User" /var/log/nginx/access.log \
  | awk '{print $7}' | sort | uniq -c | sort -rn | head -20

Check the requests are genuine

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

  • Keenable-User: compare each address with the ranges at app.keenable.ai/bot/keenable-user.json. A request claiming to be Keenable user fetch from outside them is not genuine.

Frequently Asked Questions

What is the official user-agent string for Keenable user fetch?
The official user-agent string for Keenable user fetch is: Keenable-User. Use this exact string in robots.txt, Nginx, Apache, or Cloudflare firewall rules to target this bot. Matching in robots.txt is case-insensitive. Keenable publishes the IP addresses for Keenable-User at app.keenable.ai/bot/keenable-user.json. A request that names Keenable-User from another address is not from Keenable.
Is Keenable user fetch safe?
Yes. Keenable user fetch is a documented bot: Keenable publishes a page that names it and explains what it does.
Will blocking Keenable user fetch hurt my SEO?
Blocking it stops Keenable fetching your pages on request. No effect on Google or Bing.
How do I block Keenable user fetch in robots.txt?
Add the following lines to your /robots.txt file:
User-agent: Keenable-User
Disallow: /

This instructs Keenable user fetch not to crawl any path on your site. To block only specific sections, replace / with the path (e.g., Disallow: /blog/).
Does Keenable user fetch respect robots.txt?
Yes. Keenable documents robots.txt control for Keenable-User as a separate token.
How do I verify if Keenable user fetch is crawling my site?
Search your web server access logs for the string Keenable-User (case-insensitive: grep -i "Keenable-User" /var/log/nginx/access.log). Filter by user-agent in your log analytics tool (GoAccess, AWStats, etc.).