All 150 hints checked by the Audisto Crawler
The Audisto Crawler checks websites against a list of common mistakes and issues. Here you find a full list
of all hints that the Audisto Crawler checks automatically on each crawl of a website.
Table Of Content
- <a> has both href and onclick attributes
- <a> has malformed href
- <a> has no content
- <a> has no href attribute
- <a> href attribute has leading or trailing whitespace characters
- <a> href is empty
- <a> link contains user and password
- <a> link uses a websocket protocol
- <a> link uses an unknown protocol
- <a> link uses data: protocol
- <a> link uses file: protocol
- <a> link uses ftp: protocol
- <a> link uses javascript: protocol
- <a> link uses mailto: protocol
- <a> link uses sftp: protocol
- <a> linking relative to base
- <a> links to fragment by name attribute on non-anchor
- <a> links to fragment by name attribute, not id
- <a> links to fragment only
- <a> links to fragment only, but <base> points to another URL
- <a> links to fragment that was not found
- <a> more than 100 links
- <a> no outgoing internal links
- <a> no target=_blank to external
- <a> no target=_blank to your other domains
- <a> target=_blank to external
- <a> target=_blank to same domain
- <a> target=_blank to your other domains
- <base> contains malformed or empty href
- <base> found
- <base> found more than once and differs
- <base> href contains a path only
- <base> is same as URL
- <base> occurs more than once
- <base> points to other URL
- <form> POST to HTTPS from HTTP
- <form> Unsafe GET to HTTP from HTTPS
- <form> Unsafe POST to HTTP from HTTPS
- <form> method is GET
- <frameset> found
- <frameset> found, but <noframes> missing
- <h1> and <h2> not found
- <h1> not found
- <h1> occurs more than once
- <h1>-<h6> chain broken
- <html> contains more than 1500 nodes
- <html> contains too many uncommon non-printable characters
- <html> contains uncommon non-printable characters
- <html> contains unencoded Left-To-Right-Mark or Right-To-Left-Mark
- <html> contains unencoded joiner chars
- <html> contains unencoded soft hyphen (SHY)
- <html> is more than 100 KB in size
- <html> starts with BOM
- <iframe> found
- <img> alt attribute exists but empty
- <img> has no alt attribute
- <img> has no width and/or height attribute
- <link rel=canonical> URL is not absolute
- <link rel=canonical> contains malformed or empty href
- <link rel=canonical> found
- <link rel=canonical> found outside <head>
- <link rel=canonical> found twice
- <link rel=canonical> found twice and differs
- <link rel=canonical> not found
- <link rel=canonical> points to other URL
- <link rel=canonical> points to same URL
- <link> found outside <head>
- <meta description> missing or empty
- <meta description> occurs more than once
- <meta description> too long for Google snippet
- <meta keywords> found
- <meta language> found
- <meta refresh> found
- <meta> found outside <head>
- <script> loaded multiple files from local domain
- <script> more than 3 KB within HTML
- <title> found outside <head>
- <title> missing or empty
- <title> occurs more than once
- <title> short or single word
- <title> too long for Google snippet
- CSS <style> content larger than 0.5 KB
- CSS <style> found
- CSS loaded multiple files from local domain
- CSS style attribute found
- Charset: Charset set in HTTP Content-Type header and in document differ.
- Charset: Invalid charset in Content-Type HTTP header
- Charset: Not set
- Charset: Not set in Content-Type HTTP header
- Charset: Not set in document
- Compression not enabled
- Content-Security-Policy HTTP header missing
- Cookies send over insecure connection
- Cookies set with secure flag over insecure connection
- Cookies set without secure flag
- Duplicate id attributes
- Hreflang: Found
- Hreflang: Language tags in HTML and hreflang self link differ
- Hreflang: Self link found, but document has no language
- Hreflang: Self link missing
- Hreflang: URL empty or malformed
- Hreflang: URL is not absolute
- Language: Content-Language http-equiv meta element found
- Language: Invalid
- Language: Not set on document
- Language: Set multiple times and differs
- Linked as a resource
- Linking: Follow link to a so far no-follow URL
- Linking: nofollow link to a follow URL
- Linking: nofollow link to network URL
- Linking: nofollow linking revoked later on
- Links: Non-standard rel attribute value found
- Redirect Chains: 2nd level
- Redirect Chains: 3rd level
- Redirect Chains: 4th level
- Redirect Chains: 5th level or higher
- Redirect Loops: Redirect loop starts here
- Redirect: 1st level
- Redirect: Host change
- Redirect: Location URL is not HTTP or HTTPS
- Redirect: Non-ASCII Characters in Location URL
- Redirect: Protocol change
- Redirect: To external URL
- Robots: Directive probably misspelled
- Robots: Directives Missing
- Robots: Specified more than once
- Robots: follow
- Robots: index
- Robots: nofollow
- Robots: nofollow differs across specifications
- Robots: noindex
- Robots: noindex differs across specifications
- Safe HTTPS webpage loads unsafe resource
- Strict-Transport-Security HTTP header has short duration
- Strict-Transport-Security HTTP header is invalid
- Strict-Transport-Security HTTP header missing
- Strict-Transport-Security HTTP header sent more than once
- URL contains escaped characters in path
- URL has & in path
- URL has // in path
- URL has 3 or more query parameters
- URL has ? in query
- URL has more than 115 characters
- URL has non-ascii, non-lowercase elements in path
- URL has non-lowercase elements in path
- URL has query
- URL has repetitive elements in path
- URL has repetitive parameters in the query
- URL has repetitive parameters in the query, values differ
- URL too long for some browsers
Hints
- <a> has both href and onclick attributes
- If a link with an href attribute and an onclick attribute is found, the URL is flagged with this hint.
- <a> has malformed href
- If a malformed href is found, the URL is flagged with this hint.
- <a> has no content
- If a link without content is found, the URL is flagged with this hint.
- <a> has no href attribute
- If a link without an href attribute is found, the URL is flagged with this hint.
- <a> href attribute has leading or trailing whitespace characters
- If a leading or trailing whitespace gets dicovered in an HTML anchor tag, the linking URL gets flagged with this hint.
- <a> href is empty
- If a link with an empty href attribute or an href that contains only whitespace is found, the URL is flagged with this hint.
- <a> link contains user and password
- An anchor’s href contains user and password, such as http://user:password@example.com.
- <a> link uses a websocket protocol
- An anchor’s href uses a websocket protocol (either ws: or wss:).
- <a> link uses an unknown protocol
- An anchor’s href uses a protocol that is unknown to our crawler.
- <a> link uses data: protocol
- An anchor’s href uses the data: protocol.
- <a> link uses file: protocol
- An anchor’s href uses the file: protocol, which is used to open files on the user’s computer.
- <a> link uses ftp: protocol
- An anchor’s href uses the ftp: protocol to link to an FTP server.
- <a> link uses javascript: protocol
- An anchor’s href uses the javascript: protocol, which may execute arbitrary JavaScript code.
- <a> link uses mailto: protocol
- An anchor’s href uses the mailto: protocol.
- <a> link uses sftp: protocol
- An anchor’s href uses the sftp: protocol to link to an SFTP server.
- <a> linking relative to base
- If links are found, that are relative to the base, the URL is flagged with this hint.
- <a> links to fragment by name attribute on non-anchor
- The anchor contains a fragment link, but the target is defined by a name attribute and is not an anchor itself.
- <a> links to fragment by name attribute, not id
- The anchor contains a fragment link, like “#top”, but the target is defined by a name attribute.
- <a> links to fragment only
- The anchor tag contains a fragment-only link target, like “#top”.
- <a> links to fragment only, but <base> points to another URL
- <a> links to fragment only, while there is a <base> pointing to another URL
- <a> links to fragment that was not found
- The anchor contains a fragment link, like “#top”, but there was no corresponding id or name attribute found in the document.
- <a> more than 100 links
- If more than 100 unique links are found, the URL is flagged with this hint.
- <a> no outgoing internal links
- If the HTML contains no internal links, the URL is flagged with this hint.
- <a> no target=_blank to external
- An anchor tag with target=_blank was not found in a hyperlink to an external domain.
- <a> no target=_blank to your other domains
- An anchor tag with target=_blank was not found in a hyperlink to other domains that you included in your crawl.
- <a> target=_blank to external
- An anchor tag with target=_blank was found in a hyperlink to an external domain.
- <a> target=_blank to same domain
- An anchor tag with target=_blank was found in a hyperlink to the same domain.
- <a> target=_blank to your other domains
- An anchor tag with target=_blank was found in a hyperlink to other domains that you included in your crawl.
- <base> contains malformed or empty href
- A <base> tag was found, but its href attribute contains an invalid URL, or a URL that is neither HTTP nor HTTPS.
- <base> found
- If a base is set in the HTML, the URL is flagged with this hint.
- <base> found more than once and differs
- More than one <base> directive are found with a differing href attribute value.
- <base> href contains a path only
- The <base> tag’s href attribute contains a path, not an absolute URL.
- <base> is same as URL
- A <base> tag was found, but it points to the same URL, thereby rendering itself useless.
- <base> occurs more than once
- More than one <base> tag was found.
- <base> points to other URL
- A <base> tag was found and it points to another URL.
- <form> POST to HTTPS from HTTP
- The form posts to an HTTPS URL, but resides on an HTTP URL.
- <form> Unsafe GET to HTTP from HTTPS
- A form uses the GET method and submits itself to an HTTP URL, but resides on a HTTPS URL.
- <form> Unsafe POST to HTTP from HTTPS
- A form uses the POST method and submits itself to a HTTP URL, but resides on an HTTPS URL.
- <form> method is GET
- If a form using the GET method is found, the URL is flagged with this hint.
- <frameset> found
- If a <frameset> is found, the URL is flagged with this hint.
- <frameset> found, but <noframes> missing
- A <frameset> was found, but a <noframes> is missing.
- <h1> and <h2> not found
- If no h1 and h2 headings are found, the URL is flagged with this hint.
- <h1> not found
- If the HTML does not have an h1 heading, the URL is flagged with this hint.
- <h1> occurs more than once
- If more than one <h1> tag is found, the URL is flagged with this hint.
- <h1>-<h6> chain broken
- If the HTML contains a broken <h1>-<h6> chain, the URL is flagged with this hint.
- <html> contains more than 1500 nodes
- The HTML of a page has an excessive DOM size of more than 1.500 nodes.
- <html> contains too many uncommon non-printable characters
- The HTML documents contains too many uncommon non-printable characters, and not all of them will be shown in live analysis.
- <html> contains uncommon non-printable characters
- If uncommon non-printable characters are detected, the URL of the document containing the character is flagged.
- <html> contains unencoded Left-To-Right-Mark or Right-To-Left-Mark
- A Left-To-Right or Right-To-Left-Mark was found, but it is not encoded as HTML entity.
- <html> contains unencoded joiner chars
- A zero-width joiner or zero-width non-joiner was found, but it is not encoded as HTML entity.
- <html> contains unencoded soft hyphen (SHY)
- A soft hyphen was found, but it is not encoded as HTML entity.
- <html> is more than 100 KB in size
- If a document is more than 100 KB in size, the URL is flagged with this hint.
- <html> starts with BOM
- There is a unicode byte order mark (BOM) at the top of the HTML.
- <iframe> found
- If an iframe is found, the URL is flagged with this hint.
- <img> alt attribute exists but empty
- If an image with an empty alt attribute is found, the URL is flagged with this hint.
- <img> has no alt attribute
- If an image without an alt attribute is found, the URL is flagged with this hint.
- <img> has no width and/or height attribute
- If an image without a width or height attribute is found, the URL is flagged with this hint.
- <link rel=canonical> URL is not absolute
- If the canonical element specifies a URL relative to the document’s URL, the document’s URL is flagged with this hint.
- <link rel=canonical> contains malformed or empty href
- This hint identifies all occurrences of canonical elements that contain an invalid target URL.
- <link rel=canonical> found
- A canonical element has been found, either as a <link> tag with rel=“canonical” or an according link header.
- <link rel=canonical> found outside <head>
- A canonical element was placed outside of the <head> section and so search engines will ignore it.
- <link rel=canonical> found twice
- More than one canonical element was found, either as a <link> tag with rel=“canonical” or an according link header.
- <link rel=canonical> found twice and differs
- More than one canonical element has been found, either as a <link> tag with rel=“canonical” or an according Link header. Additionally, they specify different targets.
- <link rel=canonical> not found
- A canonical element has not been found: neither a <link> tag with rel=“canonical” nor an according link header. This may be intended.
- <link rel=canonical> points to other URL
- If the canonical element is found and it points to a different URL, the URL is flagged with this hint.
- <link rel=canonical> points to same URL
- If the canonical element is found and points to the same URL, the URL is flagged with this hint.
- <link> found outside <head>
- A <link> tag was placed outside of the <head> section where it may have no effect.
- <meta description> missing or empty
- If the meta description is missing or empty, the URL is flagged with this hint.
- <meta description> occurs more than once
- If a meta description is found more than once in the HTML, the URL is flagged with this hint.
- <meta description> too long for Google snippet
- If the meta description is too long to be displayed in search result snippets, the URL is flagged with this hint.
- <meta keywords> found
- If the HTML contains meta keywords, the URL is flagged with this hint.
- <meta language> found
- <meta name=language> was found. Use the lang-attribute in the <html> tag instead.
- <meta refresh> found
- If a meta refresh is found, the URL is flagged with this hint.
- <meta> found outside <head>
- A <meta> tag was placed outside of the <head> section, where it may have no effect.
- <script> loaded multiple files from local domain
- If multiple JavaScript files from the crawled domain are loaded, the URL is flagged with this hint.
- <script> more than 3 KB within HTML
- If more than 3 KB of JavaScript is found within the HTML, the URL is flagged with this hint.
- <title> found outside <head>
- A <title> tag was placed outside of the <head> section, where it may have no effect.
- <title> missing or empty
- If the <title> tag is missing, the URL is flagged with this hint.
- <title> occurs more than once
- If the <title> tag is found more than once, the URL is flagged with this hint.
- <title> short or single word
- If the title of a document has less than 10 characters or if it is only a single word, the URL is flagged with this hint.
- <title> too long for Google snippet
- If the title of a document is too long to be displayed in search result snippets, the URL is flagged with this hint.
- CSS <style> content larger than 0.5 KB
- If more than 0.5 KB of CSS is found within <style> tags, the URL is flagged with this hint.
- CSS <style> found
- If CSS is found within a <style> tag, the URL is flagged with this hint.
- CSS loaded multiple files from local domain
- If multiple CSS files from the domain of the crawl are loaded by the URL, it is flagged with this hint.
- CSS style attribute found
- If CSS is found as a style attribute, the URL is flagged with this hint.
- Charset: Charset set in HTTP Content-Type header and in document differ.
- Both the document and the HTTP Content-Type header specify a charset, but these are not identical.
- Charset: Invalid charset in Content-Type HTTP header
- The Content-Type HTTP header specifies an invalid charset.
- Charset: Not set
- There is no charset set, neither in the Content-Type HTTP header, nor in the document, e.g. through a <meta> tag.
- Charset: Not set in Content-Type HTTP header
- The Content-Type HTTP header does not specify a charset.
- Charset: Not set in document
- There is no charset set in the document, e.g. through a <meta> tag.
- Compression not enabled
- Content compression was not enabled, or the gzip/deflate compression is not supported by the server.
- Content-Security-Policy HTTP header missing
- If the Content-Security-Policy HTTP header is missing, the URL is flagged with this hint.
- Cookies send over insecure connection
- A cookies send over an insecure connection was found.
- Cookies set with secure flag over insecure connection
- A secure cookies send over an insecure connection was found.
- Cookies set without secure flag
- If cookies are set without using the secure flag, the URL is flagged with this hint.
- Duplicate id attributes
- The same ID was assigned to several elements.
- Hreflang: Found
- <link> tag with hreflang attribute was found
- Hreflang: Language tags in HTML and hreflang self link differ
- <link> tag with hreflang attribute points to current URL, but the language is different than the one set in the HTML.
- Hreflang: Self link found, but document has no language
- <link> tag with hreflang attribute points to current URL, but the document itself has no language set.
- Hreflang: Self link missing
- <link> tags with hreflang-attribute were found, but none of them points to the current URL.
- Hreflang: URL empty or malformed
- <link> tag with hreflang attribute was found, but the URL it points to is invalid.
- Hreflang: URL is not absolute
- If the hreflang element specifies a URL relative to the current URL, it is flagged with this hint.
- Language: Content-Language http-equiv meta element found
- A Content-Language declaration was found as http-equiv meta element
- Language: Invalid
- Language found does follow some basic rules for language tags.
- Language: Not set on document
- No proper language definition was found for the HTML document.
- Language: Set multiple times and differs
- The document language was set multiple times and differs.
- Linked as a resource
- The element was linked to as a resource, like an image, a CSS file, a script, or the source of a frame.
- Linking: Follow link to a so far no-follow URL
- A follow link was found, linking to a URL that was previously linked “nofollow” only.
- Linking: nofollow link to a follow URL
- A link with rel=“nofollow” was found, linking to a URL that was previously linked “follow”.
- Linking: nofollow link to network URL
- A nofollow links to a URL within the scope of the crawl (network) was found.
- Linking: nofollow linking revoked later on
- A URL that has been linked nofollow has later (i.e. on the same or a deeper level) been linked to as follow.
- Links: Non-standard rel attribute value found
- The rel attribute has a value without predefined meaning
- Redirect Chains: 2nd level
- This hint shows redirects that point to a redirect target, making it the first element in a redirect chain.
- Redirect Chains: 3rd level
- This report highlights all elements on the 3rd level in a redirect chain.
- Redirect Chains: 4th level
- This report highlights all elements on the 4th level in a redirect chain.
- Redirect Chains: 5th level or higher
- This report highlights all elements on the 5th level in a redirect chain.
- Redirect Loops: Redirect loop starts here
- This URL is the first element in a redirect loop. A redirect loop is a chain of redirects that ultimately redirects to this URL again.
- Redirect: 1st level
- This hint identifies redirects that have internal links on the site.
- Redirect: Host change
- A redirect is forwarding the user to another host.
- Redirect: Location URL is not HTTP or HTTPS
- Redirect leads to a URL that is neither HTTP nor HTTPS
- Redirect: Non-ASCII Characters in Location URL
- Only printable ASCII characters are allowed in HTTP header values and redirect location URLs.
- Redirect: Protocol change
- A redirect changes the protocol from HTTP to HTTPS or vice versa.
- Redirect: To external URL
- Redirect leads to a URL that is not within the crawled domain(s).
- Robots: Directive probably misspelled
- A directive which is likely a misspelling of the robots meta tag was found.
- Robots: Directives Missing
- No robots meta tag or X-Robots-Tag header directive was found.
- Robots: Specified more than once
- Robots directives are specified more than once. If a document contains more than one robots definition, it will be flagged.
- Robots: follow
- The URL is set to “follow” by a robots directive, either by the robots meta tag or the X-Robots-Tag header.
- Robots: index
- The URL is set to “index” by all robots directives, either by the robots meta tag or the X-Robots-Tag header.
- Robots: nofollow
- The webpage is set to “nofollow” by a robots directive, either by the robots meta tag or the X-Robots-Tag header.
- Robots: nofollow differs across specifications
- There is more than one source for robots, either a robots meta tag or a X-Robots-Tag header, and at least one specifies “nofollow” while another does not.
- Robots: noindex
- The URL is set to “noindex” by a robots directive, either with the robots meta tag or the X-Robots-Tag header.
- Robots: noindex differs across specifications
- There is more than one source for robots directives, either a robots meta tag or a X-Robots-Tag header, and at least one specifies “noindex” while another does not.
- Safe HTTPS webpage loads unsafe resource
- If an HTTPS webpage contains an unsafe resource that is loaded using HTTP, it is flagged with this hint.
- Strict-Transport-Security HTTP header has short duration
- If a Strict-Transport-Security header is set to a short duration, the URL is flagged with this hint.
- Strict-Transport-Security HTTP header is invalid
- If a Strict-Transport-Security HTTP header is not properly defined, the URL is flagged with this hint.
- Strict-Transport-Security HTTP header missing
- If a Strict-Transport-Security HTTP header is missing, the URL is flagged with this hint.
- Strict-Transport-Security HTTP header sent more than once
- If a Strict-Transport-Security HTTP header is sent more than once, the URL is flagged with this hint.
- URL contains escaped characters in path
- If the URL contains escaped characters (non-ascii) in the path, it is flagged with this hint.
- URL has & in path
- If the URL has an ampersand (&) in the path, this hint in triggered.
- URL has // in path
- If the URL contains two consecutive slashes, it is flagged with this hint.
- URL has 3 or more query parameters
- If the URL contains a query string with 3 or more parameters, it is flagged with this hint.
- URL has ? in query
- If the URL has a question mark (?) in the query, this hint in triggered.
- URL has more than 115 characters
- If the URL is more than 115 characters long, it is flagged with this hint.
- URL has non-ascii, non-lowercase elements in path
- If the URL contains escaped characters or non-lowercase characters, the URL is flagged with this hint.
- URL has non-lowercase elements in path
- If the URL contains non-lowercase characters, it is flagged with this hint.
- URL has query
- If the URL contains a query string, it is flagged with this hint.
- URL has repetitive elements in path
- If the URL contains repeating elements like /foo/foo/ or /foo/bar/foo/bar/ in the path, it triggers this hint.
- URL has repetitive parameters in the query
- If the URL contains repeating parameters like ?a=1&a=1 or ?b=1&b=2 in query, it triggers this hint.
- URL has repetitive parameters in the query, values differ
- If the URL contains repeating parameters in the query, and the values are different, like ?a=1&a=2, it triggers this hint.
- URL too long for some browsers
- If a URL longer than 2,000 characters is encountered, it is flagged with this hint, since some browsers are unable to handle URLs of this size.