Keyword Density Checker
See which words and phrases dominate a page, with density figures and over-use warnings.
Build a valid robots.txt with crawler groups, disallow rules, crawl delay and a sitemap line.
Your result is ready — download it below:
Re-encoded without size gain Download links expire within 30 minutes.
No result to display for the current input.
Build a valid robots.txt with crawler groups, disallow rules, crawl delay and a sitemap line.
robots.txt has a small syntax and a lot of ways to get it subtly wrong, usually in the direction of blocking more than you meant to. Tick the crawlers your rules apply to, choose whether they are blocked from specific paths or allowed everywhere, list one path per line, and the generator assembles the file exactly as a crawler will read it.
The result is text you can copy or download. Nothing is written to your server, so a mistake here cannot take a live site offline — you publish it yourself when the file looks right.
robots.txt tells crawlers which URLs they may fetch. That is the whole of it. It does not hide anything from a person: a disallowed page still loads in a browser when you type its address, and a disallowed asset is still downloadable if you know the URL.
It is also not an access control. Anything that must be genuinely private — an admin area, a paid download, personal data — needs authentication at the server, never a robots.txt rule. Treat the file as a polite instruction about what is not worth crawling.
The file is a series of groups. Each starts with one or more User-agent lines followed by rules that apply to exactly those crawlers. A crawler reads the group whose user-agent token matches its own name exactly — Googlebot matches User-agent: Googlebot but not User-agent: Google.
The catch that surprises people: when a specific group matches, the catch-all * group is ignored for that crawler. Listing rules for Googlebot and nothing else means every other crawler, including Bing, is governed solely by whatever the * group says — or by no group at all.
Disallow: with nothing after the colon means allow everything; that is the only correct way to express it. Disallow: / means block everything. The distinction is the source of a well-known publishing mistake, and it is worth reading the generated file once before you ship it.
Within a group, the most specific matching rule wins, and a matching Allow beats a matching Disallow regardless of length. That is how a single file is opened inside a blocked folder — block /admin, then allow /admin/public.
Two wildcards are supported. * matches any run of characters, so /admin/* covers everything under that folder. $ anchors the end of the URL, so /page.php$ matches that one file but not /page.php?id=4.
Paths are matched from the beginning of the path, not as complete strings. A rule of /admin therefore also covers /administrator and /admin-panel. A leading slash is added for you if you leave it out.
Crawl-delay asks a crawler to wait between requests. Google has ignored it for years, while Bing and Yandex still honour it, so it is worth setting for a large site that is not bandwidth-sensitive rather than for a small one.
The Sitemap: line is the most reliably useful part of the file for most sites. It points crawlers at your XML sitemap and needs no group, so it sits at the end, outside every group. A full absolute URL is required; a relative path is ignored.
The file must live at the root of your domain — https://example.com/robots.txt — and nowhere else. A file in a subfolder, or one blocked by a server rule, does nothing at all while looking like it is working.
Before you publish, check two things: that the first group does not contain Disallow: /, and that a path you definitely want indexed is not caught by a prefix rule. Then confirm the live file by opening its URL directly — if the site is on a framework that rewrites unknown paths to a 200 page, you may be looking at your homepage instead of a 404, which hides the problem rather than fixing it.
No. A disallowed URL can still be indexed if it is linked from elsewhere, and it will appear in results as a bare link with no snippet. To keep a page out of the index, allow crawling and use a noindex meta tag or an X-Robots-Tag header instead.
At the root of the domain, so example.com/robots.txt, in the folder your webserver serves as the document root. Not in a subfolder, and not behind a redirect. A file in the wrong place is silently ignored.
It is reasonable to stop crawlers wasting requests on admin URLs, and it is common on large sites. It is not a security measure. Protect anything sensitive with authentication, because a disallowed admin URL is still reachable by anyone who types it.
Every crawler is told to stay off the entire site, which is usually an accident from an empty field. The home page itself becomes uncrawlable, so the site can drop out of search results entirely. If a site has done this, fixing robots.txt and requesting a recrawl is the recovery.
No. Google has ignored Crawl-delay for years and treats it as unsupported. Bing and Yandex do honour it. Use it on a large site that is heavy on the server, and rely on Search URL Inspection and sitemap priority for anything involving Google.
No, and treating it as one is a common and costly mistake. It is a public file that asks crawlers politely, and any disallowed URL can still be opened directly. Use server-level authentication for anything that must stay private.
Robots.txt Generator builds a valid robots.txt from a form: pick your crawler groups, choose allow or block, list the paths, set a crawl delay and add your sitemap URL.
How to use: tick the crawlers, list the paths to disallow, then press Run and copy the result.
See which words and phrases dominate a page, with density figures and over-use warnings.
Turn a title or headline into clean, lowercase URL slugs with your own separator and length limit.
Paste your page source and see every title, description, Open Graph and robots tag checked at once.
Build a valid XML sitemap from a list of URLs, with clean-up, lastmod dates and protocol fixing.