Robots.txt for SEO

SEO may seem to be a massive project for web administrators, but it combines small components. And Robots.txt for SEO is an integral part of the SEO journey. Robots.txt makes your SEO stronger than ever. It is the easiest of the files to generate. But, when it comes to a little mistake, it turns over the whole SEO game. It may wipe out the previous efforts impacting your rankings on SERPs. This article will cover the complete guide on Robots.txt file for SEO to make your task a smooth ride.

What is Robots.txt File?

Robots.txt is the file that contains information about which one of the web pages to exclude by crawlers. Simply, it is the Robot exclusion file. Most of the search engines consider it as a standard to communicate with crawlers.

Now you must be wondering what the crawlers are! The search engines like Google or Bing use web crawlers to create entries for indexing web pages from the internet. Also known as web spiders or search engine bots. So, its purpose is to get desired data from websites and display them as per user searches.

History of Robots.txt File

Nothing in this world emerges out of the blue. It has some background and reasons behind it. Similarly, the origin of the Robots.txt file goes back up to 1994. Martijn Koster created a robots.txt standard to protect websites from dreadful crawlers. And to guide web crawlers on the correct pages.

After that, in 1997, a rough web draft was published to restrict spiders from reaching selected areas on the websites. It marked the beginning of controlling web bots with specific commands.

After almost 25 years from the previous development, it sets in the new era of standard. In 2019, Google announced the Robots Exclusion Protocol (REP). It is the set of specifications for the Robots.txt file. Most of the other search engines also follow these standards. So, it is worth working on this file.

How to create a Robots.txt for SEO?

Let’s start with the basics of the Robots.txt file. In general, it includes a set of directives for search engines. It follows the pattern as:

Syntax of Robots.txt File for SEO

Starting with the first instruction sitemap, it contains the URL of the XML sitemap. Further, we have a combination of user-agents along with its directives.

User agents

Here, Bot identifiers are names of user-agents of different search engines. For putting directives for different crawlers, you need to assign separate identifiers. It is pretty beneficial to deal with search engines at your convenience.

The most important user agents are:

1. User-agent for Google: Googlebot
2. Bing: Bingbot
3. Yahoo: Slurp

There are several user agents on the web, even within the same search engine. For Google, these are:

1. Newsagent: Googlebot-news
2. Image Bot: Googlebot-images
3. Advertisement agent: AdsBot-Google

So on and so forth. It is better to use the wildcard (*) when the same directives are valid for all the user agents.


Directives are a set of instructions that you want crawlers to follow. Mind it; every crawler may not accept the same directives. It may require some tweaks and variations.

Commonly used directives are:


The SEO team can use disallow directives to block certain files or URLs by assigning their path. For instance, if you want Googlebot not to access your product description page, you’ll specify it as:

Disallow Directive for Robots.txt

Note: If you don’t provide any pathname, the identifier will ignore it.


Allow directive helps specify the files that web crawlers can access. You can allow access to different search engines by naming them separately. For example, you can make an exception for Google as:

User-agent: *
Disallow: /product

The first set of instructions prohibits all search engines and web crawlers from reaching product description files. But, Google bots can access shirts and bags files from the products file.

Allow Directive for Robots.txt

Here, Google also can’t access files like



If you’re not aware of how to use ‘allow and disallow,’ it can cause a conflict of rules. Search engines Google and Bing have different patterns than other search engines.

Other search engines agree with the first matching directive. On the other hand, Google and Bing consider the length of directives.

Length of Directive for Robots.txt

In the above case, /article has 8 characters and /article/ has 9 characters. So, allow directive wins, as it has more characters. But, for other search engines, this rule doesn’t apply. They’ll go with the directive disallow only.


All major search engines like Google, and Bing support sitemap. It is the essential part of the Robots.txt file. It tells which URLs are available for crawling. So, including it on either on top or end of the .txt file produces maximum results. The format is:

Sitemap: [complete URL]


Comments are the ones that start with the character “#.” Code designers generate these comments to make humans understand the commands. Additionally, it acts as a guide for web specialists as well.

Web spiders ignore the presence of these comments.

Robots.txt Ignores Comments


Many search engines support this directive but not Google. But, Bing and Yandex are the ones that support this directive even now. When you have many web pages for indexing and crawling, crawl delay specifies the gap between every web crawl. It prevents the overloading of the server. Thus, it improves the efficiency of crawling.

Improve Efficiency of Crawling

By this, you’re setting a crawl delay of 10 seconds between every crawl action. It is not beneficial if you have a website like eCommerce or a site having millions of pages. But, for a small website, it saves bandwidth.

Noindex and Nofollow

Many SEO marketers think that they can use Noindex and Nofollow in the Robots.txt file. But, they are not part of Robots.txt but part of source code.

So, what is the relevance of these directives? Disallow can prevent the crawling of the page can’t stop the index. Here comes the role of Robots’ meta tags.

They come within the <head> section of the web page source code as:


<meta name=“robots” content=“noindex” />



Nofollow works the same as the Nofollow link and tells search engines to ignore that link. Noindex and nofollow can come together as well.

<meta name= “Googlebot” content= “noindex, nofollow” />

So, Google doesn’t accept Nofollow and Noindex in the Robots.txt file but with the meta tag.

What is the importance of Robots.txt for SEO?

Robot .txt is the crucial part of optimizing your website. It is the guiding light for search engines on how they can crawl a website.

When a web crawler visits your website, it will go directly to the Robots.txt file before moving on to the website. If it is a clean chit like:

User-agent : *
Disallow :

Then, all the crawlers can access all the web pages. On the other hand, if it blocks all identifiers as in:

User-agent : *
Disallow: /

Then, no crawler can visit any page. So, it is just a matter of single ‘/.’

Now, why do you need a Robots.txt file? You’re making web pages for search engines to crawl them. But, what is the relevance of blocking them?

Crawl Budget

Let’s suppose you have a WordPress admin page. It contains many internal linking pages. Crawlers come and may keep on revolving within these pages.

Did spider visit the critical pages? No. Then, it just increases the crawl budget. And indexing of essential pages remains missed out.

Duplicate pages

You must have heard duplicate content is havoc for SEO. Sometimes, duplicate pages are necessary, like a printer-friendly version of the page as in forms. Or when both pages exist with HTTP and secure HTTPS.

But, search engines don’t know which one of the pages is original and duplicate. In this case, mentioning the URL of the printer version or HTTP version of the page becomes necessary from an SEO point of view.

Additionally, you need organic, reliable, and up-to-date content to bring a regular stream of traffic to your site. So, using organic SEO services you can avoid the trap of duplicate content and fresh design content for your site.

Pages in Progress

There might be certain pages that are in progress or staging web pages. You certainly don’t want spider such pages to index these pages and display to the users. So, keeping them in the closet is the best solution.

Resource files

All websites have resource files of embedded elements like images, videos, podcasts, graphics, and others. Resource files are en route to the source of these elements. Equally, it has nothing to do with search engines or even users. So, these files must not appear in search results.

How to use Robots.txt for SEO?

The foremost thing comes from where to generate this file. Open the notepad, write the commands, and upload this .txt file in the root directory.

Finding the already present file

Let’s say the file is already there on the concerned website. How to find it? The root directory of the website is

Further, the file might be there or might not be. So, check out.

1. File exists: If the file is already there, you can see if the proper code is there. And if it is working as per SEO. Otherwise, you can optimize it yourself.
2. Empty file: If the blank file is there, you need to create the file from scratch.
3. 404 status error code: It means the required file does not exist. So, in this case, you can make a Robots.txt file as well as upload it on the website.

Size of the Robots.txt file

The maximum size of the Robots.txt file is 500 kilobytes. So, if you’ll exceed this limit, search engines won’t accept it.

What are the Robots.txt SEO best practices?

Here in this section, we’ll be going to discuss the best practices with respect to the robots.txt file for SEO.

Writing commands in one line

The thumb rule for using directives is to write directives in the next line. Otherwise, crawlers will not be able to understand directives.

Robots.txt SEO Best Practices #1

Case sensitive

All the directives are case-sensitive. By changing a single character to the upper case will not yield correct results.

Robots.txt SEO Best Practices #2

So, whenever you’re specifying a specific path, check the case sensitivity of the character. Otherwise, web crawlers will not list it.

Using user-agent only once

It is best to add user-agent only once in the Robots.txt file to simplify the code. Let’s suppose a Google bot comes at the Robots.txt file. It finds the matching user-agent. Fulfills the command and leaves it. But, if you declare it after some paragraphs once again, it will remain ignored.

Utilize character “$” to signify the end of the URL

“$” shows the end of the URL. So, it will assign this symbol, user-agent will consider it valid for all the URLs with the same specification.

User-agent: *
Disallow: /*.php$

For the above scenario, all the user-agents will ignore URLs ending with ‘php’, but access .php?14920 and the like.

Instruction Hacks

Several instructions that can cover your Robots.txt goals in one go.

Allow access to all files to all spiders.

User-agent: *

You can use the blank Disallow directive to keep all files open for indexing. Generally, small websites can use this instruction to keep all paths, directories, and URLs open for indexing.

❖ Block all files

User-agent: *
Disallow: /

Use Disallow directive with trailing slash.

❖ Block single user-agent to access a type of file

Let’s say you want to block Bingbot for accessing URLs. You can use this command.

User-agent: Bingbot
Disallow: /*?

Robots.txt file Common errors

Here in this section, we’ll be going to discuss the common errors faced while implementing robots.txt file SEO.

Not verifying after generating code from Robots.txt file generator.

No doubt, the Robots.txt generator is a helpful tool. But, entirely relying on this tool can be detrimental for SEO. Instead, Manual checking is necessary for any commands mentioned here and there. It will avoid common errors.

And sometimes, some pages may be left uncovered. So, you can recheck for such mistakes and generate the most reliable code. Further, the Robots.txt file is a key part of the eCommerce store. If you want accurate files for your store, you can take the help of eCommerce SEO experts.

Not being specific

Specificity is the key to producing the best results. Failing to write definite code can play havoc on your SEO. It is worse to the extent that it can wipe out the pages containing similar words. Let’s say you want to block a folder directory named “fi.”

User-agent: *
Disallow: /fi

You specify it in the file. But, can you run it as it is? Definitely not! It will block all the folder’s names preceding with the letters fi.


And the like. But, we have a hack here; end fi with trailing slash.

Disallow: /fi/

So, it won’t have a ripple effect on other directories.

Include all subdomains in a single Robots.txt file

Including all subdomains in one Robots.txt file will create utter confusion for the web crawlers. So, create separate Robots.txt for different subdomains.

Trying to prevent bad crawlers

Mentioning evil spiders in the Robots.txt file is like an open invitation to these crawlers to come for a feast. Come and obtain crucial information like:

User-agent: EmailSiphon
Disallow: /

User-agent: PetalBot
Disallow: /

Keeping secret directories in the file

On one side, you want to keep certain information directories secret. Side by side, you’re making them public on the Robots.txt file. It will do more harm than good to your reputation and privacy like:

User-agent: *
Disallow: /passwords-file.

In this way, everyone will come to know the location of your secret directory. Instead, use these methods:

❖ Use the first few letters of the secret file.

Disallow: /pa

❖ Use meta tag in HTML header with noindex and nofollow tags or X-robots tag. These all come within the header set.

<meta name: “robots”, content= “noindex, nofollow”>

X-robots-tag: noindex

Audit for .txt file

Now, you’ve created a Robots.txt file. What is the surety that it will work well? You need to perform an SEO audit for that. A single mistake sometimes remains undetected for a long time. But, it leaves its mark on SEO and thus affecting your rankings on SERPs.

So, it is vital to audit Robots.txt whenever you make any changes to it.

Method A: You can put your domain or URL in the Google URL Inspection tool to check its indexing.

If Robot .txt has blocked a particular URL, it will display or show an error that Robots.txt blocks the requested URL.

URL Blocked by Robots.txt

You can inspect your sitemap for the URL that you want Google to index. Accordingly, you can check some of the URLs to ensure proper indexing of these URLs. And include duplicate pages in the Robots.txt file.

Method B: Another approach is to use Google robots.txt Tester.

Test Your Robots.txt

Put any of the files that you have included in the Robots.txt file. You’ll get the message as:

Message Displayed by Robots.txt Test Tool

There could be a high possibility that one URL may be indexed but prevented by Robots.txt. In this case, you can use meta tags and x robots tags in your HTML header section code.


Robot .txt file is an essential ingredient of SEO recommendations. Some website owners consider it as redundant optimization. However, it increases the efficiency of crawling and indexing your website. It saves web crawlers from getting stuck in the internal link loop of the website. But, it indeed requires a careful approach to generate the correct code.

A small slip in the Robots.txt code can be an SEO blunder. So, refer to our complete Robots.txt guide mentioned above. Further, Webomaze has SEO experts having years of experience to lead your Robots.txt journey. You can contact the best SEO company in India to generate a fully optimized Robots.txt file as per your website and business requirements.

Leave a Reply

Your email address will not be published. Required fields are marked *

Ravi Sharma
Ravi is a technology entrepreneur with great passion of digital marketing. He is a solutionist and provides important insights to clients for solving their business problems. He is a charter member of TiE (The Indus Entrepreneur) and fond of traveling.

Reaching us out is never a problem!

Let's Work Together