|Basic SEO reports|
|List of indexable/non-indexable pages|
It's necessary to view a list of indexable / non indexable pages to make sure there are no mistakes. Maybe some URLs were intended to be indexable?
|Yes. Go to "URL explorer" -> add a new filter: "is indexable"|
|Missing title tags|
Meta titles are an important part of SEO audits. A crawler should show you a list of pages that have missing tags.
|Yes. Go to "overview" -> click on "Title tag missing or empty"|
|Filtering URLs by status code (3xx, 4xx, 5xx)|
When you perform an SEO audit, it's necessary to filter URL by status code. How many URLs are not found (404)? How many URLs are redirected (301)?
|List of Hx tags|
“Google looks at the Hx headers to understand the structure of the text on a page better.” - John Mueller
|Yes, you can see information on H1 and H2 tags|
|View internal nofollow links|
It's nice to see internal nofollow list to make sure there aren’t any mistakes.
|Yes, go to Internal Pages -> Outgoing links and on the bar chart, click on External outgoing links: nofollow|
|External links list (outbound external)|
A crawler should allow you to analyze both internal and external outbound links.
|Link rel="next" (to indicate a pagination series)|
When you perform an SEO audit, you should analyze if the pagination series are implemented properly.
|Yes. Go to Data Explorer and add a new filter: `pagination next URL`: `exists`|
Hreflang tags are the foundations of international SEO, so a crawler should recognize them to let you point to hreflang-related issues.
|Yes, go to Internal pages -> Localization|
|Canonical tags||Every SEO crawler should inform you about canonical tags to let you spot indexing issues.||Yes, You can easily spot canonical-related issues through viewing the following reports: "Canonical points to 4XX, Canonical from HTTPS to HTTP, Canonical points to 5XX, Canonical points to redirect).|
|Information about crawl depth - number of clicks from a homepage|
Additional information about crawl depth can give you an overview of the structure of your website. If an important page isn’t accessible within a few clicks from a homepage, it may indicate poor website structure.
|Yes. Go to Data Explorer. Make sure that the "Depth" column is active|
|List of empty / Thin pages|
A large number of thin pages can negatively affect your SEO efforts. A crawler should report them.
|Yes (based on the word count). Go to Internal pages -> Content quality|
|I can cite you here||Duplicate content recognision|
A crawler should give you at least basic information on duplicates across your website.
|Yes. Go to Overview -> watch the "HTML tags & content" section|
|A detailed report for given URL|
It's must-have! If you do a crawl of a website, you may want to see internal links pointing to a particular URL, to see headers, canonical tags, etc.
|Yes. Click on any URL in Data Explorer|
Advanced URL filtering for reporting - using regular expressions and modifiers like "contains," "start with,” "end with."
I can't imagine my SEO life without a feature like this. It’s common that I need to see only URLs that end with “.html” or those which contain a product ID. A crawler must allow for such filtering.
|Adding additional columns to a report
This is also a very important feature of crawlers. I simply can't live without it. When I view a single report, I want to add additional columns to get the most out of the data. Fortunately, most crawlers allow this.
Some crawlers offer the possibility to categorize crawled pages (i.e. blog, product pages etc) and see some reports dedicated to specific categories of pages.
|Filtering URLs by type (HTML, CSS, JS, PDF etc)
Crawlers visit resources of various types (HTML, PDF, JPG). But, usually you want to review only HTML files. A crawler should support this.
|Basic statistics about website structure - ie. Depth stats||Yes, go to Internal pages. Here, you can see some interesting charts. http://take.ms/EFvOI|
|Overview - the list of all the issues listed on a single dashboard
It's a positive if a crawler lists all the detected issues on a single dashboard. Of course, it will not do the job for you, but it can make SEO audits easier and more efficient.
|Comparing to the previous crawl|
When you work on a website for a long time, it’s important to compare the crawls that were done before and after the changes.
|List mode - crawl just the listed URLs (helpful for a website migration)|
Sometimes you want to perform a quick audit of a specified set of URLs without crawling the whole website.
|Yes. In the crawl settings you can specify a set of URLs to start from. If you want to do so, make sure that you specified "Max depth level from seed" for "1". This will enable the list mode.|
|Changing the user agent|
Sometimes, it's necessary to change the user agent. For example, even when a website blocks Ahrefs, you still need to perform a crawl. Also, more and more websites detect Googlebot by user agent and serve it a pre-rendered version instead of fully equipped JS.
|Crawl speed adjusting |
You should be able to set a crawl speed i.e 1-3 URLs per second if a website can't handle host load, while you may want to crawl much faster if a website is healthy.
|Can I limit crawling? Crawl depth, max number of URLs|
Many websites have millions of URLs. Sometimes, it's good to limit the crawl depth or specifying a max number of URLs allowed to crawl.
|Analyzing a domain protected by an htaccess Login|
(helpful for analyzing staging websites)
This is a helpful feature if you want to crawl the staging website.
|Can I exclude particular subdomains, include only specific directories?||Yes|
|Universal crawl -> crawl + list mode + sitemap||No|
It's handy to be able to schedule a crawl and set monthly/weekly crawls.
|Indicating the crawling progress|
If you deal with big websites, you should be able to see the current status of a crawl. Will you wait a few hours, or weeks till the 1kk+ crawl will finish?
Accidental changes in robots.txt can cause Google to not be able to read and index your content. It's beneficial if a crawler detects changes in Robots.txt and informs you.
|Crawl data retention|
It’s good if a crawler can store results for a long period of time.
|3-12 month (depending on the plan)|
|Notifications - crawl finished|
A crawler should inform you when a crawl is done (desktop notification / email).
|Advanced SEO reports|
|List of pages with less than x links incoming|
If there are no internal links pointing to a page, it may mean for Google that the page is probably irrelevant. It’s crucial to spot orphan URLs.
|Yes. Go to internal pages and add a new filter: "No. of inlinks". Alternatively, you can see the orphan pages by clicking on "Internal pages" -> "Incoming links" -> "Orphan page (has no incoming internal links)"|
|Comparison of URLs found in sitemaps and in crawl.||Sitemaps should contain all the valuable URLs. If some pages are not included in a sitemap, it can cause issues with crawling and indexing by Google. |
If a URL is apparent in a sitemap, but can't be accessible through crawl, it may be a signal to Google that a page is not relevant.
|Yes. Go to URL Explorer -> Add a new column: "in Sitemap".|
|Internal Page Rank value||Although any PageRank calculations can’t reflect Google’s link graph, it’s still a really important feature. Imagine you want to see the most important URLs based on links. Then you should sort URLs by not only simple metrics like number of inlinks, but also by internal PageRank. You think Google doesn’t use PageRank anymore? http://www.seobythesea.com/2018/04/pagerank-updated/||Yes|
In mobile-first indexing it’s necessary to perform a content parity audit between the mobile and desktop versions of your website
|Additional SEO reports|
|Malformed URLs (https://https://, https://example.com/tag/someting/tag/tag/tag or https://www.example.com/first_part of URL||You can do it partially. Go to URL explorer and try the following filters: "URL contains space", "URL contains `https://https` ".|
|List of URLs with parameters||Yes. Go to "Data explorer" -> select filter URL contains "?"|
|Mixed content (some pages / resources are served via HTTPS, some by HTTPS)||Yes|
|Redirect chains report|
Nobody likes redirect chains. Not users, not search engines. A crawler should report any redirect chains to let you decide if it's worth fixing.
|Yes. Go to Internal Pages -> Redirect chain. It will be shown as long as there are redirect chains on your website http://take.ms/j76IZ|
|Website speed statistics|
Performance is becoming more and more important both for users and SEO. So crawlers should present reports related to performance.
|Yes, go to Internal pages -> Performance|
|List of URLs blocked by robots.txt|
It happens that a webmaster mistakenly prevents Google from crawling a particular set of pages. As an SEO, you should review the list of URLs blocked by robots.txt - to make sure there are no mistakes.
|Exporting to excel / CSV|
Sometimes a crawler has no power here and you need to export the data and edit it in Excel / other tools.
|Yes + there are some pre-build exports|
|Exporting to PDF||No|
|Custom reports / dashboards||No|
|Sharing individual reports|
Imagine that you want to share a report related to 404s with your developers. Does the crawler support it?
|Granting access to a crawl for another person|
It's pretty common that two or more people work on the same SEO audit. Thanks to report sharing, you can work simultaneously.
|Explanation on the issues|
If you are new to SEO, you will appreciate the explanation of the issues that many crawlers provide.
|Yes (click on "Why and how to fix")|
A crawler should let you perform a custom extraction to enrich your crawl. For instance, while auditing an e-commerce website, you should be able to scrape information about product availability and price.
|Can crawler detect the unique part - that is not a part of the template?||It’s valuable if a crawler let you analyse only the unique part of a page (excluding navigation links, sidebars and footer).||No|
|Ability to use the crawler's API||No|
|Supported operating systems||All - it's a web-based application|
|Integration with Google Analytics||No|
|Integration with Google Search Console||No|
|Integration with server logs||No|
|Integration with other tools||No|
|Yes (it's available in the Advanced and Agency plans)|
|Free account - try||You can use 7-day trial, paying (7$)|