If you experience an unexpected SEO traffic drop, it’s crucial to know how to identify exactly what led to it. Many SEO professionals are quick to assign blame to an algorithm update, but it actually could have been caused by a technical issue, content change, loss of inbound link equity, a malware injection, a change in search volume, loss of a single high-volume keyword ranking, or a combination of several factors.
Identifying the correct reason (or reasons) for the drop is the best way to definitively lead your team down the correct recovery path.
Forensic SEO Audit Checklist
A proper forensic SEO audit checks ALL of the following things, even if one of these factors seems to be the reason for the traffic drop. In my forensic SEO analyses, I very often uncover several coinciding reasons that combined to lead to a traffic drop. If I were to stop at the first thing in the list I found wrong, then I may only be uncovering a portion of the problem, and the client would not receive the full benefit of correcting all of the issues.
1 – Interview the website owner and their development team.
Ask them to tell you EVERYTHING they’ve changed on the site recently, even if it doesn’t seem like it would be relevant. Very often clients and developers don’t think that a certain site edit could possibly affect their SEO traffic, when it can.
Also ask if they have recently pushed any changes from a staging site to production, or launched a new version of their website. There’s always a risk of the robots.txt file or noindex tags being incorrectly carried over to the live site in such situations. If I had a nickel for every time a redesigned site was launched this way, well, I’d have a LOT of nickels.
Lastly, be sure to ask about their other marketing activities that can affect branded search. Online advertising, offline advertising, and trade show participation can all affect branded organic search traffic. Discontinuing a TV, radio, or magazine ad may not seem like it could affect SEO traffic, but it most certainly can reduce the number of people searching for a brand or company name.
2 – Make sure the site is still indexable.
Look at the robots.txt file and if you’re unsure about what you’re seeing there, use the Robots.txt testing tool in Search Console.
Also run a site crawl with a tool such as Screaming Frog and look for noindex tags, redirects, and canonical tags that result in certain (or all) pages on the site being non-indexable.
3 – Make sure the traffic data you’re looking at is accurate.
I’ve had clients freak out that their traffic has dropped significantly, just to find out that someone removed the Google Analytics tracking code from the site, or made an edit to the code that affected the accuracy of data collection. Use Tag Assistant to make sure that the tracking code is not only present, but also functioning correctly.
4 – Check to see if traffic dropped across ALL sources, SOME sources, or JUST organic.
In Google Analytics, compare the date range from the organic traffic drop to present day – to the same time period before the drop. Take into account whether that site has any fluctuations throughout a typical week, month, or year when choosing your comparison timeframe (i.e. weekday vs. weekend traffic patterns, busy times of the month/year). Choose the most closely matching time periods as you can.
Then go to Acquisition -> All Traffic -> Channels and see if all channels dropped or if it was just some channels, or just organic. Just organic, combined with cross-checking for similar signals in other data sources, typically confirms that it was actually an SEO issue that caused the drop.
However, if other sources dropped as well, especially if ALL sources dropped, then either seasonality or a trickle-down effect from a change or reduction in other marketing activities could be at play. If paid advertising and/or social channels dropped along with organic, then those could have been driving brand awareness that then led to people searching for the brand in search engines. The various Multi-Channel Funnels reports in Google Analytics as well as filtering the Search Console Performance report by brand terms can help prove this. You can also create custom segments to look for correlating relationships between paid channels and organic.
Here’s a screenshot from a situation in which I discovered that the discontinuation of online ads in early April led to reduced organic search traffic, due to a drop in branded search (users searching for that company’s brand name.) When ads were turned back on in late May, organic immediately started to rebound, further proving my hypothesis.
I also cross-checked this against Search Console’s Performance report and found further proof that branded search was down more than non-branded.
However, there were also two high-volume, non-branded keywords that dropped in position, impressions, and clicks during the same time period – which contributed a bit to the overall total drop in organic traffic as well. That’s a good example of why ALL factors should be looked at, even when you think you already found the main reason for the drop.
5 – Check for seasonality and holiday impact.
Very often a client starts paying attention to their analytics for either the first time ever or the first time in a long time. They will see a sudden month-over-month drop in organic traffic and panic. What they won’t realize is that a month-over-month drop of almost the same exact size occurred at almost the same exact time the prior year, and the year before.
So always check in both Google Analytics and Search Console to see if the same or similar sized decrease occurred during the same time period the prior year. For weather-dependent businesses like landscapers, seasonal drops may not occur at the same exact time each year, so you may have to compare two months together year-over-year, or consult some yearly weather pattern historical data in order to pinpoint when their season really kicked in this year versus last year.
There’s at least two other sources I always consult as well before concluding that seasonality is at play. I check Google Trends to view seasonal popularity patterns for the client’s topic (i.e. “landscaping”) and I check Search Console’s Performance report to ensure that their highest volume keywords did not drop in position yet received a reduced number of impressions.
If you can prove that a similar drop occurred at a similar time last year, the general public is searching for the topic less (via Google Trends), and high-volume keyword rankings have not actually moved down in average position yet received less impressions, then it’s probably safe to say that seasonality is a factor.
But, as I harped on before, it’s important to still check everything else in this list for potential co-occuring factors as well!
Also keep in mind, especially with month-over-month drops, that some months are shorter than others (especially February) and that holidays can impact traffic patterns significantly for some businesses. In retail, that can lead to temporary spikes (and corresponding drops after the holiday), and in B2B, long holiday weekends and weeks can lead to traffic declines that rebound afterward.
6 – Check to see if it was an actual traffic drop, or a return to normal patterns after a traffic spike.
This is a very common thing I see. Month-over-month traffic drops sharply, sounding off alarm bells. Then I simply open up the date range in Google Analytics and see that the current month’s organic traffic is completely on-par with what the rest of the year looks like for that site, with the exception of the immediate prior month (or a portion of it.)
For example, this company is not a type of business that would be expected to experience any seasonality, but they happen to have an Easter-related blog post that ranks really well for high-volume holiday-specific terms. Therefore, during the month in which that holiday occurs, and even a for a month or two prior, traffic spikes for them dramatically. The following month, it suddenly returns to normal.
In this case, I was able to verify that same pattern year-over-year, but in other cases the temporary spike had been caused by something else – the client got mentioned in the news, they ran a short-term radio or TV ad, etc. This reiterates the importance of checklist item 1, interviewing the client.
7 – Check for fake traffic and malware.
It is also possible that a traffic spike (and subsequent drop) could be from traffic that isn’t even real. Hacked site content and/or referral spam can over-inflate organic traffic numbers for a short period of time. Look at the “Valid” URLs in the Search Console Coverage report, URL-specific reports in Google Analytics (under Behavior -> Site Content -> All Pages), and the Audience -> Technology -> Network (change primary dimension to “hostname”) to check for content that doesn’t belong on the site or hostnames that aren’t real. However, referral spam can show up on valid hostnames, too, so also check Acquisition -> All Traffic -> Source/Medium for traffic sources with very little or no time on page and pages per visit. Looking at Audience -> Geo -> Location and Language can also help identify spikes in traffic from bots or referral spam from locations and languages that don’t normally visit the site that much.
Also perform a “site:yourdomain.com” search in Google and dig deep into the deepest pages of search results. This often uncovers hacked content that can’t be seen any other way, even by online malware scanners. Keyword ranking reports in Search Console and tools like SEMRush can help uncover that as well.
Here’s an example of a “site:clientdomain.com” search and
Having malware present on a site, even if that malware does not push additional traffic to the site, can cause Google to drop it from or demote it in its index.
8 – Check for changed URLs that were not redirected.
This is also a common one, especially with website redesigns. Look in Google Analytics under Behavior -> Site Content -> All Pages. Set the date range to compare the same time period before and after the drop. Look for big drops on individual URLs, then test those URLs to see if they still exist or if they give a 404 error.
Also look for 404s in Search Console’s Coverage report (both under “Errors” and “Excluded”) and run an onsite crawl with a tool like Screaming Frog to look for 404s as well.
9 – Check to see if the whole site was affected, or just a section of it.
As best you can, segment the site into different sections and look at traffic patterns for each separately. Use hostnames (Audience -> Technology -> Network and change primary dimension to “hostname”) to look at subdomains separately, and use the search function in Behavior -> Site Content -> All Pages to look at subdirectories separately. You may find that the drop was isolated to a certain type of content, such as blog content, or product pages. That doesn’t necessarily give you a clear reason for the drop, but it’s a great data point to have in order to start to form hypotheses.
10 – Check for changed meta tags and page copy.
If you don’t have access to view site backups, the Wayback Machine will be your best friend here. I have often found instances, especially with redesigned sites, where meta tags and/or content that was well-keyword-optimized before is no longer optimized now. Even just having a home page title tag change from “Best XYZ Company in X State” to “Home” can have a very detrimental effect on traffic. Another common traffic-dropper is a reduction in the amount of text or links on a page, so look for that as well.
11 – Check for changes in inbound link profile and/or penalties.
The loss of good inbound links, or the addition of spammy backlinks, can both be causes for SEO traffic drops. Use a tool like Ahrefs to check for these factors. Also check the “Manual Actions” report in Search Console to see if the site has been penalized.
(PS! Be sure you’re looking at the correct Search Console property! Very often I get added to Search Console for the older non-https version, or the version without the “www” when the site renders with it. Double-check that you have access to either the domain property or all of the individual URL prefix properties for every different way the URLs actually load.)
12 – Dig through ALL Search Console reports, especially the Coverage report.
You never know what you’re going to find, but just look at it ALL. Especially the “Excluded” section of the Coverage report. You may notice some patterns in the excluded URLs that will clue you into a technical issue.
And while you’re in there, run a few pages through the URL Inspection Tool and then click “Test Live URL” to ensure current indexability.
13 – Check to see if the domain had been suspended.
This is one I saw for the first time very recently. Somehow the client didn’t think to mention this, but for several weeks their domain had been suspended. This coincided nearly perfectly with their traffic drop, obviously. I use https://whoisrequest.com/history/ to check for instances like this where the domain’s nameservers were temporarily pointed somewhere else.
14 – Check for performance changes on individual high-volume keywords.
In the Performance report in Search Console, set a “Compare” date range from before and after the drop. Click on one metric at a time in the top (so that only one at a time is in color) and sort by the “Difference” column so that the biggest losses are at the top.
In this case, the site completely lost 4 high-volume keywords at the point in which traffic dropped:
Further analysis is needed to determine WHY those keywords dropped (see all checklist items prior to this one), but if none of the other factors above apply, then you might be able to conclude the one thing I try to only arrive at by process of elimination, which is…
15 – Check for algorithm updates.
Since this is the most-often blamed reason for traffic drops, yet rarely an accurate one, I leave this for last. Only if I cannot attribute the entirety of the traffic drop to any of the non-algorithmic factors above do I consider that an algorithm update may be to blame.
Consulting lists of both confirmed algorithm updates (like Moz’s list) and reports of unconfirmed ones (as reported on by Search Engine Roundtable) can help pinpoint the dates, and sometimes the nature of, recent algorithm updates. Google sometimes issues statements about algorithm updates on their @SearchLiason Twitter account, so check that as well.
Only after finding a confirmed or widely-cited algorithm change date close to the date of your drop, and not being able to fully attribute the traffic drop to any of the above factors, will I conclude that an algorithm update was a factor in the drop.
For example, the site in the screenshot above experienced its traffic drop starting on June 3, 2019, when Google rolled out a confirmed core algorithm update. There were actually some other factors from the above list that were at play as well, but the complete disappearance of those high-volume keywords wasn’t able to be attributed directly to any of those. So my conclusion was that it was both an algorithm update, and other technical factors, that combined to create the drop.
16 – Last, but not least, here’s the most important tip I have for conducting a successful forensic SEO audit:
Pretend you’re on trial in a court of law. Your livelihood is on the line. If you can’t convince a whole jury, beyond the shadow of a doubt, that you have enough evidence to support your claim – then you shouldn’t be making it. Pretend that you will be cross-examined and that expert witnesses will try everything in their power to prove you wrong. That mindset is what will drive you to avoid jumping to conclusions and relying on biases that you don’t even know you have. It will help you collect enough evidence to prove to yourself that you found the most accurate explanation for this client, and that you are most definitely pointing them in the right direction toward a resolution.
Critical Thinking is CRUCIAL to a Successful Forensic SEO Audit.
I’ve given several examples here of common things I’ve found during forensic SEO audits; however, there are plenty of edge cases as well, where something I’ve never seen before ends up being the reason for the traffic drop. So this checklist may not lead you to the answer. You may have to do more digging. Just ensure that you’re thinking critically the whole time, add a healthy dose of stubbornness, and you’ll find it eventually.
- Google Ads Announces Free Ad Credits for Existing Advertisers as COVID-19 Relief - March 31, 2020
- 16 Tips for Forensic SEO Audit Success [Checklist] - September 16, 2019
- Is Your Web Developer Spoofing Your PageSpeed Insights Score? - November 29, 2018