{"id":13219,"date":"2022-09-02T10:35:14","date_gmt":"2022-09-02T07:35:14","guid":{"rendered":"https:\/\/rocketseo.md\/blog\/top-16-technical-seo-mistakes-based-on-248-audits\/"},"modified":"2026-04-03T15:47:08","modified_gmt":"2026-04-03T12:47:08","slug":"top-16-technical-seo-mistakes-based-on-248-audits","status":"publish","type":"post","link":"https:\/\/rocketseo.md\/en\/top-16-technical-seo-mistakes-based-on-248-audits\/","title":{"rendered":"Top 16 technical SEO mistakes based on 248 audits"},"content":{"rendered":"\n<p>Think your website is perfectly optimized technically? My long experience with technical audits would disagree with you. For more than six years I have never once analyzed a site without technical errors, even if it was an audit of the work of a third-party agency or specialist. On medium and large projects, even with a regular full site audit, it is almost impossible to keep track of the full technical health of the resource in the endless succession of changes and improvements made to the site.   <\/p>\n\n<h2 class=\"wp-block-heading\" id=\"&#x421;&#x430;&#x43C;&#x44B;&#x435;-&#x447;&#x430;&#x441;&#x442;&#x44B;&#x435;-&#x43E;&#x448;&#x438;&#x431;&#x43A;&#x438;\">Most common mistakes<\/h2>\n\n<p>This block contains the most common errors that occur on 90% of all sites being checked. They are easy to diagnose and fix. I advise you to check them first, because the probability of their detection on your site is very high.  <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41D;&#x435;-&#x43E;&#x43F;&#x440;&#x435;&#x434;&#x435;&#x43B;&#x435;&#x43D;&#x43E;-&#x433;&#x43B;&#x430;&#x432;&#x43D;&#x43E;&#x435;-&#x437;&#x435;&#x440;&#x43A;&#x430;&#x43B;&#x43E;-&#x441;&#x430;&#x439;&#x442;&#x430;\">The main mirror of the site is undefined<\/h3>\n\n<p>When launching a new website, it is important to identify the main mirror. There are 4 options: <\/p>\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>http:\/\/site.com\/<\/td><td>http:\/\/www.site.com\/<\/td><td>https:\/\/site.com\/<\/td><td>https:\/www.site.com\/<\/td><\/tr><\/tbody><\/table><\/figure>\n\n<p><em>*in very rare cases the site is displayed using the 5th option, a URL with an IP address like: xxx.xxx.xxx.xx.xx.xx:xx or site.com:xx.<\/em><\/p>\n\n<p>Search engines consider these versions to be different sites and will see them as complete duplicates with an attempt at search engine spam.<\/p>\n\n<p><em>Less common is the case when the mirrors are glued, but this is implemented through 302 redirect (302 Moved Temporarily), which unlike 301 redirect (301 Moved Permanently), informs the search engine robot about the temporary, not permanent movement of the page to a new address, because of which it may not index the final URL of the redirect and leave the initial URL in the index.<\/em><\/p>\n\n<p><strong>How it should be:<\/strong> A <strong>301 redirect<\/strong> (301 Moved Permanently) from all possible versions of the site to the main version is set up to avoid complete duplicates of the resource.<\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41D;&#x435;-&#x43D;&#x430;&#x441;&#x442;&#x440;&#x43E;&#x435;&#x43D;&#x44B;-&#x431;&#x430;&#x437;&#x43E;&#x432;&#x44B;&#x435;-&#x440;&#x435;&#x434;&#x438;&#x440;&#x435;&#x43A;&#x442;&#x44B;\">Basic redirects are not configured<\/h3>\n\n<p>There are many possible types of generated duplicate pages by different CMS sites. Below are the most common examples of errors: <\/p>\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Type of redirect<\/strong><\/td><td><strong>Possible take<\/strong><\/td><td><strong>Possible original<\/strong><\/td><\/tr><tr><td>Processing \/ at the end of the URL<\/td><td>https:\/\/site.com\/categor<strong>y<\/strong><\/td><td>https:\/\/site.com\/categor<strong>y\/<\/strong><\/td><\/tr><tr><td>Superfluous \/ in the URL structure<\/td><td>https:\/\/site.com\/category<strong>\/\/<\/strong>https:\/\/site.com<strong>\/\/\/<\/strong>category<\/td><td>https:\/\/site.com\/category\/<\/td><\/tr><tr><td>Upper case URL<\/td><td>https:\/\/site.com\/CaTEgory\/<\/td><td>https:\/\/site.com\/category\/<\/td><\/tr><tr><td>Index copies of files<\/td><td>https:\/\/site.com\/index.phphttps:\/\/site.com\/index.html<\/td><td>https:\/\/site.com\/<\/td><\/tr><tr><td>Hosting index copies<\/td><td>https:\/\/site.com\/index.htm<\/td><td>https:\/\/site.com\/<\/td><\/tr><\/tbody><\/table><\/figure>\n\n<p>If you don&#8217;t set up 301 redirects from other versions of pages, they will create full or partial copies of each other, which search engine robots perceive as spam and duplicate content, which ultimately prevents the normal ranking of the main version.<\/p>\n\n<p><strong>How it should be:<\/strong> A version of a website page should only be found at one URL. Search engines consider any change in the URL to be a completely different page that is a duplicate of a useful promoted page. <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41C;&#x443;&#x441;&#x43E;&#x440;&#x43D;&#x44B;&#x435;-&#x441;&#x442;&#x440;&#x430;&#x43D;&#x438;&#x446;&#x44B;-&#x437;&#x430;&#x43A;&#x440;&#x44B;&#x442;&#x44B;-&#x432;-robots.txt,-&#x430;-&#x43D;&#x435;-&#x447;&#x435;&#x440;&#x435;&#x437;-noindex\">Trash pages are closed in robots.txt, not via noindex<\/h3>\n\n<p>Many experts close pages from indexing through the robots.txt file, which is only a recommendation to crawl, not an ultimatum.  <\/p>\n\n<p><strong>How it should be:<\/strong> All pages undesirable to get into the index are closed through &lt;meta name=&#8221;robots&#8221; content=&#8221;noindex, follow&#8221; \/&gt;. The dofollow or nofollow value is set depending on the content of the pages. <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x418;&#x437;&#x43E;&#x431;&#x440;&#x430;&#x436;&#x435;&#x43D;&#x438;&#x44F;,-&#x441;&#x43A;&#x440;&#x438;&#x43F;&#x442;&#x44B;-&#x438;-&#x441;&#x442;&#x438;&#x43B;&#x438;-&#x437;&#x430;&#x43A;&#x440;&#x44B;&#x442;&#x44B;-&#x43E;&#x442;-&#x438;&#x43D;&#x434;&#x435;&#x43A;&#x441;&#x430;&#x446;&#x438;&#x438;\">Images, scripts and styles are closed from indexing  <\/h3>\n\n<p>It is a common mistake to add incorrect recommendations to scanning search robots in the robots.txt file not to index all pages of the site containing get-parameters, the rule Disallow: \/*? in its various variations, or close system folders like Disallow: \/wp-content\/. Some CMS have recommendations to add a basic robots.txt file with this error.  <\/p>\n\n<p>When adding, no one takes into account what those rules hurt with links to media files, scripts and styles, for example:<\/p>\n\n<p>*.css? ver=45 or<\/p>\n\n<p>*\/wp-content\/plugins\/*jquery.modal.min.css<\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/r1UZGkLNUwzW5RTAnmSvnMeR0NEbZBM7lNNblzPT4U0dLWA4KTxV_YOYE60y9GBOLLUdzxe-d4YVHTWHqXtuZxKL1ldMdv5yuRZC1pfLRYcpMxpuHk6Zlr8iEh4ROJWoyj447_oIHnSbRLh5O5UndQBGnlC-Bwtjz2OYmI8ndWpbLrywZnmsYhbU1A\" alt=\"\"\/><\/figure>\n\n<p>Even given the recommendatory nature of the file, GoogleBot may not always be able to correctly process and perceive the page later on due to scanning errors of individual elements.<\/p>\n\n<p><strong>How it should be:<\/strong> To avoid duplicate content on sites with many unnecessary pages with get-parameters, and not to harm page rendering by search engine robots, rules are used to specify canonical pages using &lt;link rel=&#8221;canonical&#8221; href=&#8221;[url]&#8221; \/&gt; for all pages containing get-parameters, except for pagination pages (if they are implemented as ?page=n and not \/page-n\/).<\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41D;&#x435;&#x43A;&#x43E;&#x440;&#x440;&#x435;&#x43A;&#x442;&#x43D;&#x44B;&#x439;-&#x444;&#x430;&#x439;&#x43B;-sitemap.xml\">Incorrect sitemap.xml file<\/h3>\n\n<p>The site generates sitemap.xml and does not set the rules for adding new links and auto-update cycle. Thus, the file contains links with server response codes 30X, 40X, closed to indexing in noindex or non-canonical pages, which prevents search engine robots to correctly process the file and spends extra crawling budget to re-crawl unnecessary pages. <\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/D3qAyE-y6as0e7yIMIU6fFt4LAM2c2Np74wEu50BhWUCeRtKXVyfjMhPpM_AkH1FJyQ9p7dIYBCPCwT8pwDYazAwudBvIJclUvZ6qwbuCd4BF6tVROgf78bcg9Bu2G80ky03zm9Os3yDKl0hgWH26Ys3hQVnFuzOJrLMeTAF2xtNC03HD4vKD2vHFA\" alt=\"\"\/><\/figure>\n\n<p><strong>As it should be:<\/strong> The file contains only links open for indexing and with a 200 OK response code. When new indexable URLs are added, they are automatically added to the sitemap. The file is self-updated in a configurable period depending on the type and size of the site.  <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41D;&#x435;&#x43A;&#x43E;&#x440;&#x440;&#x435;&#x43A;&#x442;&#x43D;&#x430;&#x44F;-&#x43D;&#x430;&#x441;&#x442;&#x440;&#x43E;&#x439;&#x43A;&#x430;-&#x43E;&#x431;&#x440;&#x430;&#x431;&#x43E;&#x442;&#x43A;&#x438;-&#x441;&#x435;&#x440;&#x432;&#x435;&#x440;&#x43E;&#x43C;-&#x43D;&#x435;&#x441;&#x443;&#x449;&#x435;&#x441;&#x442;&#x432;&#x443;&#x44E;&#x449;&#x438;&#x445;-&#x441;&#x442;&#x440;&#x430;&#x43D;&#x438;&#x446;\">Incorrect configuration of server processing of non-existent pages and their template<\/h3>\n\n<p>There are several problems associated with optimizing a 404 error page, and all of them are equally common.<\/p>\n\n<p><strong>Non-existing pages with a 200 OK response code.<\/strong>  Due to the lack of correct configuration, not all non-existent pages give the server response code 404 Not Found. This leads to the indexing of non-existent pages that can be generated within the site or from external links containing errors, which leads to their entry into the index of search engines and the creation of partial doubles of promoted pages. <\/p>\n\n<p><em>Most often this error occurs in CMS Bitrix on pages of 3+ nesting levels and on blog pages.<\/em><\/p>\n\n<p><strong>The design of the 404 error page is not configured.<\/strong>  When a user lands on a non-existent page, they see a white screen with no information or any links that allow them to return to the site.<\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/U7jjCQPS3oLQFvvkvNEEfaWzOtSvFEQDz_Q9nVVhy7DEnwxSPYLo_lkbsHe9Gs_BAixvlqp8iYYr5l76UD4csA5uu4vlvxdp-Y1Dl87kD4ynl26Lw-k_Vm3Fc9veFyQp4RQbvJYPD0k5XfIiSHSpNGyEfXLPAXuZQMXLNCMapjoG-wxpv8bRcLHX2w\" alt=\"\"\/><\/figure>\n\n<p><strong>Redirects when requesting a non-existent page.<\/strong>  When a non-existent page is requested, a 301 or 302 redirect (even worse) to a static 404 error page occurs, which usually looks something like this:  <\/p>\n\n<p>\/404-page.html. At best, this page gives the correct response code, but often it is an indexed page with 200 server response code.<\/p>\n\n<p><strong>How it should be:<\/strong> All non-existent pages on the site give a 404 Not Found response code and display a 404 error page template, which is designed in the site design template, contains additional information and exit paths from the page.<\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41D;&#x435;-&#x43E;&#x43F;&#x442;&#x438;&#x43C;&#x438;&#x437;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x43D;&#x44B;-&#x441;&#x442;&#x440;&#x430;&#x43D;&#x438;&#x446;&#x44B;-&#x43F;&#x430;&#x433;&#x438;&#x43D;&#x430;&#x446;&#x438;&#x438;\">Pagination pages are not optimized<\/h3>\n\n<p>At least one of the following errors is always present.<\/p>\n\n<p><strong>Specifying the canonical page.<\/strong>  Most often the canonical page is simply not defined. More rarely, the canonical page is specified incorrectly, which similarly leads to duplication. <\/p>\n\n<p><strong>Duplication of text on pages.<\/strong>  The text of the divorcing page is copied on all subsequent pagination pages.<\/p>\n\n<p><strong>Main page duplicate.<\/strong> A complete duplicate of the main pagination page is present, most often available at: <strong>?page=1<\/strong>, etc.<\/p>\n\n<p><strong>The meta generation template is not set.<\/strong>  All meta tags and pagination page titles are duplicated.<\/p>\n\n<p>All of the above errors lead to duplicate content and worse ranking of the affected pages.<\/p>\n\n<p><strong>How it should be:<\/strong> The pagination pages have the correctly specified &lt;link rel=&#8221;canonical&#8221; href=&#8221;[url]&#8221; \/&gt;. The text of the main pagination page is not duplicated on subsequent pages. The main page does not have a duplicate in the form of the first page.  <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x414;&#x443;&#x431;&#x43B;&#x438;&#x440;&#x443;&#x44E;&#x449;&#x438;&#x435;&#x441;&#x44F;,-&#x43F;&#x443;&#x441;&#x442;&#x44B;&#x435;-&#x438;&#x43B;&#x438;-&#x43D;&#x435;&#x438;&#x43D;&#x444;&#x43E;&#x440;&#x43C;&#x430;&#x442;&#x438;&#x432;&#x43D;&#x44B;&#x435;-&#x43C;&#x435;&#x442;&#x430;-&#x442;&#x435;&#x433;&#x438;-&#x438;-&#x437;&#x430;&#x433;&#x43E;&#x43B;&#x43E;&#x432;&#x43A;&#x438;\">Duplicate, empty or uninformative meta tags and titles<\/h3>\n\n<p>In many CMS, meta tags Description and Title, H1 tags are not prescribed by default. On some engines, the maximum in Title is pulled H1 value, which also provokes duplication, which leads to a worsening of page ranking.   <\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/Ysph6R8GBLAb5WNVNL3Vt_IYWSy4W0C1tS9IMAU092Bof-2ktBb07gp3G5ioBg0Vqa6YMq5eoiyamGmPaxGoPvMDmvbd9TQL8fRWs3HQGUyDtdIcjUy_ZE8wRyDg3T8fD5AxRDjTbTXDr6XWwEHvYgbauJU1WFGS_VNpAGnMb6W71L4VE2QxW5wvAw\" alt=\"\"\/><\/figure>\n\n<p>If there are no description tags, then Google independently generates a site&#8217;s snippet in the search engine, which is likely to be uninformative, which reduces the clickability rate of the site&#8217;s links to click through.<\/p>\n\n<p><strong>How it should be:<\/strong> Ideally, all information is manually prescribed following simple guidelines. In the quick variant, a generation template is set for each page type. <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41C;&#x43D;&#x43E;&#x436;&#x435;&#x441;&#x442;&#x432;&#x43E;-&#x43E;&#x448;&#x438;&#x431;&#x43E;&#x43A;-&#x432;&#x43D;&#x443;&#x442;&#x440;&#x435;&#x43D;&#x43D;&#x438;&#x445;-&#x441;&#x442;&#x440;&#x430;&#x43D;&#x438;&#x446;\">Lots of internal page errors<\/h3>\n\n<p>The site contains a large number of internal redirects or broken links. This happens with frequent changes of internal URLs of pages without configured on the engine auto-replacement in the code of the site. It also happens when you put manual linking, which then everyone forgets about and on which the rules of auto-replacement do not apply.  <\/p>\n\n<p>A large number of internal errors of the site leads to the deterioration of resource crawling due to the useless waste of crawling budget of the search robot and in some cases to the deterioration of behavioral factors.<\/p>\n\n<p><strong>How it should be:<\/strong> Non-existent pages replaced with an alternative, simply removed from the code, or removed and redirected to relevant pages, as appropriate. Redirect pages replaced with their final path. Service pages with redirects are closed from indexing.  <\/p>\n\n<h2 class=\"wp-block-heading\" id=\"&#x41E;&#x448;&#x438;&#x431;&#x43A;&#x438;-&#x441;&#x440;&#x435;&#x434;&#x43D;&#x435;&#x439;-&#x447;&#x430;&#x441;&#x442;&#x43E;&#x442;&#x44B;\">Medium frequency errors<\/h2>\n\n<p>Not the most frequent errors, but they also occur and interfere with the normal ranking of the resource. Most often such errors appear on certain types of resources, so they are not found on every site. <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x421;&#x43B;&#x443;&#x436;&#x435;&#x431;&#x43D;&#x44B;&#x435;-&#x441;&#x441;&#x44B;&#x43B;&#x43A;&#x438;-&#x43D;&#x435;-&#x441;&#x43A;&#x440;&#x44B;&#x442;&#x44B;-&#x438;&#x43B;&#x438;-&#x43D;&#x435;-&#x437;&#x430;&#x43A;&#x440;&#x44B;&#x442;&#x44B;-&#x43E;&#x442;-&#x438;&#x43D;&#x434;&#x435;&#x43A;&#x441;&#x430;&#x446;&#x438;&#x438;\">Service links are not hidden or closed from indexing<\/h3>\n\n<p>There are several types of links that are necessary for user convenience and fulfill only a technical role, but are useless in terms of promotion:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>technical filters (sorting, prices, grid, etc.);<\/li>\n\n\n\n<li>pages of 2 filters of the same block;<\/li>\n\n\n\n<li>pages of 3 different block filters;<\/li>\n\n\n\n<li>share social media buttons.<\/li>\n<\/ul>\n\n<p>When clicking on such links, the search robot spends its crawling budget to scan them, which can lead to problems with the speed of resource indexing.<\/p>\n\n<p><strong>How it should be:<\/strong> It is desirable that such links are not just closed from indexing or canonicalized, but cut out of the site code altogether.<\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41F;&#x440;&#x438;-&#x43F;&#x435;&#x440;&#x435;&#x43D;&#x43E;&#x441;&#x435;-&#x441;&#x430;&#x439;&#x442;&#x430;-&#x437;&#x430;&#x431;&#x44B;&#x43B;&#x438;-&#x43E;&#x442;&#x440;&#x435;&#x434;&#x430;&#x43A;&#x442;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x442;&#x44C;-&#x441;&#x43A;&#x432;&#x43E;&#x437;&#x43D;&#x44B;&#x435;-&#x43D;&#x430;&#x441;&#x442;&#x440;&#x43E;&#x439;&#x43A;&#x438;\">When migrating the site, you forgot to edit the end-to-end settings<\/h3>\n\n<p>Often, when moving a site to another mirror or address, all end-to-end settings are left unchanged. The most common examples are buying an SSL certificate and changing the protocol from http to https or adding\/removing the www. prefix based on someone&#8217;s fantasies that it will be better.    <\/p>\n\n<p>In these cases, the most common non-transported code customizations may be:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>internal link addresses;<\/li>\n\n\n\n<li>indicating the canonical pages;<\/li>\n\n\n\n<li>specifying alternative language versions.<\/li>\n<\/ul>\n\n<p>This leads to a complete collapse of all settings to eliminate duplicate pages or pointing to incorrect sources, creating many errors of internal pages of the site.<\/p>\n\n<p><strong>How it should be:<\/strong> When moving a site or changing the main mirror, absolutely all information and all technical settings of the site are necessarily saved and transferred as necessary, depending on the project and the type of transfer. Moving the site is a separate big topic, on which a huge technical task is drawn up to maximize the preservation of the accumulated result. <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x423;&#x43A;&#x430;&#x437;&#x430;&#x43D;&#x438;&#x435;-canonical-&#x432;&#x43C;&#x435;&#x441;&#x442;&#x43E;-301-&#x440;&#x435;&#x434;&#x438;&#x440;&#x435;&#x43A;&#x442;&#x430;\">Specifying canonical instead of 301 redirects<\/h3>\n\n<p>Sometimes mirrors or duplicates of technically useless pages are glued together by specifying the rel=&#8221;canonical&#8221; attribute instead of setting 301 Moved Permanently. Even if you manually set the canonical page, the Google search robot can safely choose another page, because it sees the attribute as a recommendation. If 301 Moved Permanently is set, it will have no choice.  <\/p>\n\n<p><strong>As it should be:<\/strong><\/p>\n\n<p>All technically useless duplicate pages are glued together via 301 redirect. Exceptions are CNC links with get-parameters and service pages. <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41D;&#x435;&#x43A;&#x43E;&#x440;&#x440;&#x435;&#x43A;&#x442;&#x43D;&#x43E;&#x435;-&#x43E;&#x43F;&#x440;&#x435;&#x434;&#x435;&#x43B;&#x435;&#x43D;&#x438;&#x435;-&#x44F;&#x437;&#x44B;&#x43A;&#x43E;&#x432;&#x44B;&#x445;-&#x432;&#x435;&#x440;&#x441;&#x438;&#x439;\">Incorrect definition of language versions<\/h3>\n\n<p>Typical mistakes are made when defining language versions via <link rel=\"alternate\"\/>:<\/p>\n\n<ol class=\"wp-block-list\">\n<li><strong>Specifying an incorrect region for the language version<\/strong>. A recent example from practice: for the Moldovan local project we specified localization of the English-language version for USA residents, Russian-language version for Russian residents and Romanian-language version for Romanian residents, although in this example it is not necessary to specify localization at all, but only language version. <\/li>\n<\/ol>\n\n<p><link rel=\"alternate\" hreflang=\"en-us\" href=\"https:\/\/site.md\/en\/\"\/><\/p>\n\n<p><link rel=\"alternate\" hreflang=\"ro-ro\" href=\"https:\/\/site.md\/ro\/\"\/><\/p>\n\n<p><link rel=\"alternate\" hreflang=\"ru-ru\" href=\"https:\/\/site.md\/ru\/\"\/><\/p>\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li><strong>Not all alternate versions of the page are listed.<\/strong>  Do not provide a link to any of the versions, usually to the main version. Most often do not add a self-referential reference (to itself). <\/li>\n\n\n\n<li><strong>Specifies relative references instead of absolute references.<\/strong>  According to Google&#8217;s recommendations, absolute URLs should be specified in the attribute.<\/li>\n<\/ol>\n\n<p><strong>As it should be:<\/strong><\/p>\n\n<p>All links in the attribute are absolute, with no get parameters, and give a server response code of 200 OK. Links to all alternate language\/regional versions of the page are specified, including the self-referential URL. <\/p>\n\n<h2 class=\"wp-block-heading\" id=\"&#x420;&#x435;&#x434;&#x43A;&#x438;&#x435;,-&#x43D;&#x43E;-&#x43A;&#x440;&#x438;&#x442;&#x438;&#x447;&#x43D;&#x44B;&#x435;-&#x43E;&#x448;&#x438;&#x431;&#x43A;&#x438;\">Rare but critical errors<\/h2>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41E;&#x442;&#x43A;&#x440;&#x44B;&#x442;&#x430;&#x44F;-&#x434;&#x43B;&#x44F;-&#x438;&#x43D;&#x434;&#x435;&#x43A;&#x441;&#x430;&#x446;&#x438;&#x438;-dev.-&#x432;&#x435;&#x440;&#x441;&#x438;&#x44F;\">Open for indexing dev. version <\/h3>\n\n<p>Quite often when developing a site create a dev. version on a separate site or subdomain and do not close it from indexing by search engines (should make you think about the competence of developers). <\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/xykoG_pN78EVWpgndSpx0rC7vM2cDN1y1ueZTGupsW4_ZGucvql5MNZY2-EZmV5TWDZOmRxkM8uE9KiLxOWdd0JaQTiSExiUj2Iejq8KjreLufr8b-JKHEuuuRxSTan05_PsquGsxd3j09emzjgIb0_QZYfIdPWh6m81fv2A06XGHi4tWpPcZ6lXiA\" alt=\"\"\/><\/figure>\n\n<p>As a result, the site in development is already indexed. If it is completely copied from the original, it already completely duplicates all the content of the current site, lowering its ranking. New content on the site under development has already been indexed in the search engine and it has been grabbed by services that copy content, which will later make it not unique on the main site.  <\/p>\n\n<p><strong>How it should be:<\/strong> All service versions of the site are closed from indexing. Minimum &#8211; noindex. Ideally, http access is closed via htaccess.  <\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x41F;&#x440;&#x438;-&#x434;&#x43E;&#x431;&#x430;&#x432;&#x43B;&#x435;&#x43D;&#x438;&#x438;-&#x430;&#x442;&#x440;&#x438;&#x431;&#x443;&#x442;&#x43E;&#x432;-&#x43F;&#x435;&#x440;&#x435;&#x43F;&#x443;&#x442;&#x430;&#x43B;&#x438;-&lt;head&gt;-&#x438;-&lt;body&gt;\">When adding attributes, confused  and  <\/h3>\n\n<p>Not once have I seen tags with attributes canonical, noindex, alternate and others added to , not  sections of the site.  <\/p>\n\n<p><strong>How it should be:<\/strong> Add all tags and attributes as recommended in Google help so that search engine crawlers can take them into account and process them correctly.<\/p>\n\n<h3 class=\"wp-block-heading\" id=\"&#x421;&#x430;&#x439;&#x442;-&#x441;&#x442;&#x430;&#x43B;-&#x434;&#x43E;&#x440;&#x432;&#x435;&#x435;&#x43C;-&#x438;&#x437;-&#x437;&#x430;-&#x432;&#x438;&#x440;&#x443;&#x441;&#x430;\">The site became a dorway because of a virus<\/h3>\n\n<p>The site may function perfectly, all pages will be displayed and work, but tons of generated pages with strange characters leading to third-party sites will appear in the output. After that, meta tags of the current pages in the output will gradually start to change and in the end, clicks on the main links of the site in the search output will also lead to a third-party site through cloaking. <\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/SQCYgnf3lMTJynGU1E9WAcmC7ojPLRDxmYi4SJTbUVuew5fdC_7Nx548NP9LsTH7uct4-pbXn-QZVkA2OJ5HzfeRs1hjGtmMmo0JcPuZKSudxm4izUC5aMPDnwHedvlYIcqUHF_5OWINGnMUybkiyPLmkiB6fXS-qZwROke2U-bICG159rq2wVettw\" alt=\"\"\/><\/figure>\n\n<p>This usually occurs in the following cases:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>someone saved money and installed a null (hacked) template or site plugin on the site;<\/li>\n\n\n\n<li>installed plugin or website template was hacked and malicious code was added;<\/li>\n\n\n\n<li>if it&#8217;s a very weak password, it was just brute-forced;<\/li>\n\n\n\n<li>the site has not updated CMS versions or plugins for a long time and attackers have found security holes in them;<\/li>\n\n\n\n<li>An attacker with access to the site added a malicious script.<\/li>\n<\/ul>\n\n<p>After cleaning out all the garbage and reverting back to the old settings, the site usually recovers within 1-2 months.<\/p>\n\n<p><strong>How it should be:<\/strong> Buy and install only proven and popular design templates and plugins on your website. Download and install component updates in a timely manner. Periodically change access to your site, especially after a third-party contractor&#8217;s work.  <\/p>\n\n<h2 class=\"wp-block-heading\" id=\"&#x41D;&#x435;-&#x43E;&#x448;&#x438;&#x431;&#x43A;&#x430;,-&#x43D;&#x43E;-&#x43F;&#x440;&#x43E;&#x441;&#x442;&#x43E;-&#x43E;&#x447;&#x435;&#x43D;&#x44C;-&#x431;&#x435;&#x441;&#x438;&#x442;\">Not a bug, but just really infuriating<\/h2>\n\n<p>From the professional pain section. If you&#8217;re a professional and you&#8217;re reading this, please don&#8217;t do this \ud83d\ude42 <\/p>\n\n<p>Many agencies or specialists for some reason specify absolutely identical rules in robots.txt for several User-Agent: * search robots, thus making useless code duplication. In this case, you have to explain to the client why it is useless, or add a new rule for all the listed bots. <\/p>\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/dqK06DlCeX1grpkou7esWiU_GOXJRTUwtLR17hY9vAKsnmYHUra-oZUsEf3dGHqbgvJb00qjPrefSatt2jrH0VMz9M2hxPTJGSUHyhA14sUTOM-0bOIAT5ajxk0HGq5hx7v8l8jt6nqY1Q-8qjd1Vh4CHTSYyT4JhsVEFITLnSNTnHtq2Q7teZHdpQ\" alt=\"\"\/><\/figure>\n\n<p>The most horrible thing that I had to see in practice &#8211; specifying the same rules for 5 different User-Agent: General, Google, Yandex, Rambler, Bing, and one of the rules had an error, which was copied to all the other bots.<\/p>\n\n<h2 class=\"wp-block-heading\" id=\"&#x412;&#x44B;&#x432;&#x43E;&#x434;&#x44B;\">Conclusions<\/h2>\n\n<p>Regular monitoring of the technical state of the site is necessary on all types of projects of different sizes, which change regularly. Even on our personal projects, different types of errors periodically pop up that cannot be detected without a targeted inspection, so in addition to constant monitoring, we conduct regular technical audits of all internal and client projects. <\/p>\n\n<p><em>For those who have read to the end, a case in point: just a couple of weeks ago, when implementing the enhancement to bring the URLs of language versions into a single view, two doubles were generated for each promoted page of the site, which led to a loss of traffic. Without proper SEO-maintenance of the site, such an error may not be noticed or you may simply not know about its existence, which prevents you from realizing the full potential of the site. <\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Think your website is perfectly optimized technically? My long experience with technical audits would disagree with you. For more than six years I have never once analyzed a site without technical errors, even if it was an audit of the work of a third-party agency or specialist. On medium and large projects, even with a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":13221,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"_uag_custom_page_level_css":"","footnotes":""},"categories":[73],"tags":[],"class_list":["post-13219","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-seo"],"acf":[],"spectra_custom_meta":{"_encloseme":["1"],"rank_math_internal_links_processed":["1"],"_alp_processed":["1775220429"],"_yoast_wpseo_primary_category":["24"],"_wpml_media_duplicate":["1"],"_wpml_media_featured":["1"],"rating":["5"],"_rating":["field_66178d07fc012"],"_author":["field_664731c585b5e"],"rank_math_primary_category":["24"],"_wp_page_template":["default"],"rank_math_robots":["a:1:{i:0;s:5:\"index\";}"],"_thumbnail_id":["13221"],"stackable_optimized_css":[""],"stackable_optimized_css_raw":["a:0:{}"],"_last_translation_edit_mode":["native-editor"],"_wpml_word_count":["2724"],"viewed":["70"],"_yoast_wpseo_title":["Top 16 common mistakes based on 248 SEO website audits \ud83d\udd0d"],"_yoast_wpseo_metadesc":["The most common technical errors of websites based on audits of 200+ projects. \ud83d\udcdb You definitely have one or more of them, even if you're an SEO specialist. Ready-made solutions for basic technical optimization mistakes inside the article. \ud83d\udd1d"],"_yoast_wpseo_focuskeywords":[""],"rank_math_title":["Top 16 common mistakes based on 248 SEO website audits \ud83d\udd0d"],"rank_math_description":["The most common technical errors of websites based on audits of 200+ projects. \ud83d\udcdb You definitely have one or more of them, even if you're an SEO specialist. Ready-made solutions for basic technical optimization mistakes inside the article. \ud83d\udd1d"],"_edit_lock":["1775220430:4"],"rank_math_seo_score":["65"],"_edit_last":["4"],"_wpml_media_has_media":["1"],"rank_math_focus_keyword":["SEO,mistakes,audits"],"author":["13306"],"_uag_page_assets":["a:9:{s:3:\"css\";s:263:\".uag-blocks-common-selector{z-index:var(--z-index-desktop) !important}@media (max-width: 976px){.uag-blocks-common-selector{z-index:var(--z-index-tablet) !important}}@media (max-width: 767px){.uag-blocks-common-selector{z-index:var(--z-index-mobile) !important}}\n\";s:2:\"js\";s:0:\"\";s:18:\"current_block_list\";a:12:{i:0;s:14:\"core\/paragraph\";i:1;s:12:\"core\/heading\";i:2;s:10:\"core\/table\";i:3;s:10:\"core\/image\";i:4;s:9:\"core\/list\";i:5;s:14:\"core\/list-item\";i:6;s:11:\"core\/search\";i:7;s:10:\"core\/group\";i:8;s:17:\"core\/latest-posts\";i:9;s:20:\"core\/latest-comments\";i:10;s:13:\"core\/archives\";i:11;s:15:\"core\/categories\";}s:8:\"uag_flag\";b:0;s:11:\"uag_version\";s:10:\"1777619894\";s:6:\"gfonts\";a:0:{}s:10:\"gfonts_url\";s:0:\"\";s:12:\"gfonts_files\";a:0:{}s:14:\"uag_faq_layout\";b:0;}"]},"uagb_featured_image_src":{"full":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24.jpg",1200,630,false],"thumbnail":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24-150x150.jpg",150,150,true],"medium":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24-300x158.jpg",300,158,true],"medium_large":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24-768x403.jpg",768,403,true],"large":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24-1024x538.jpg",1024,538,true],"1536x1536":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24.jpg",1200,630,false],"2048x2048":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24.jpg",1200,630,false],"woocommerce_thumbnail":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24-300x300.jpg",300,300,true],"woocommerce_single":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24.jpg",600,315,false],"woocommerce_gallery_thumbnail":["https:\/\/rocketseo.md\/wp-content\/uploads\/2022\/09\/OG24-100x100.jpg",100,100,true]},"uagb_author_info":{"display_name":"rocket_admin","author_link":"https:\/\/rocketseo.md\/en\/author\/rocket_admin\/"},"uagb_comment_info":0,"uagb_excerpt":"Think your website is perfectly optimized technically? My long experience with technical audits would disagree with you. For more than six years I have never once analyzed a site without technical errors, even if it was an audit of the work of a third-party agency or specialist. On medium and large projects, even with a&hellip;","_links":{"self":[{"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/posts\/13219","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/comments?post=13219"}],"version-history":[{"count":4,"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/posts\/13219\/revisions"}],"predecessor-version":[{"id":14080,"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/posts\/13219\/revisions\/14080"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/media\/13221"}],"wp:attachment":[{"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/media?parent=13219"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/categories?post=13219"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rocketseo.md\/en\/wp-json\/wp\/v2\/tags?post=13219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}