🔎 Focus: Technical SEO
🔴 Impact: High
🟠 Difficulty: Mid-High

Sponsored By Peec AI
AI search is the fastest-growing discovery channel. Your customers ask ChatGPT, Perplexity, Claude, and Gemini for recommendations daily.
Is your brand the answer?
Peec AI shows you exactly where you stand:
Track your visibility and sentiment across all major LLMs
Benchmark against competitors to see your share of voice
Get step-by-step guidance on improving your AI visibility
Turn AI search from a black box into a measurable growth channel with clear metrics and a scalable strategy.
Dear Tech SEO 👋
Let’s talk today about SERVER LOGs. And how to analyze them to bring results.
How to get your server logs
Most of us spend 90% of their time in Google Search Console (GSC). Don’t get me wrong, GSC is the only tool we cannot live without, but it's the "filtered" version of reality (and quite slow tbh):
GSC is sampled data
GSC is delayed by 48 hours (or more)
GSC tells you what Google wants you to know.
If you want the Ground Truth, you need Server Logs.
Owning a shared server? Then is as easy as getting the Log Files from the Cpanel:

How to get the Server Log Files from the Cpanel
Most advanced cases we manage (large sites +100k pages) run on dedicated servers on Cloudflare, Vercel or AWS which have platform-specific logging systems that deliver logs data in structured JSON formats.
Whatever might be de case, the raw logs do not tell much…

Sample of a server log file in a shared server
I have to analyze server logs myself and I always check 5 critical points. Today, I will share those critical server checks.
Ready? Let’s goooooooo
Quick Log Analysis Checklist
Check | What to look for | Action |
1. Orphan Discovery | URLs with hits in logs but zero hits in your site crawl. | Link to high-value pages; 301 or 410 garbage URLs. |
2. AI Bot Access | 403 Forbidden or 404 errors for agents like | Adjust server/WAF settings to allow bots if you want AI visibility. |
3. Negative Audit | "Money Pages" in your sitemap with 0 hits in the last 30 days. | Add these pages to main navigation, footers, and internal linking. |
4. Rendering Gap | High HTML hits vs. significantly lower JS bundle (e.g., | Monitor weekly to ensure Google is triggering the 2nd wave of rendering. |
5. Wasted Budget | High hits on | Remove links from HTML, use noindex/follow, and block patterns in robots.txt. |
1. Orphan Pages
I know, “you do not need a server log to audit orphan pages”. Most of us do this:
Get the sitemap URLS
Set our Screaming Frog (or similar tool) to crawl our site
Connect GA4, GSC and the crawling tool
Compare URLs and reports that identify orphan pages

Sample of the Screaming Frog report on orphan pages
Using crawl tools + sitemaps to identify orphan pages has a major flaw:
Sitemaps are can be incomplete.
In some cases, I worked with sites without a sitemap file of any kind…
✅ The Server Log Way: Export your log file URLs and compare them to your site crawl. If a URL has hits in the logs but zero hits in your crawl, it's an orphan.
If it's high-value, link to it
If it’s garbage, 301 or 410
2. AI Crawler Visibility (Training vs. Agents)
By 2030, 50% of website traffic will be AI agents
That was a prediction I did 9 months ago.
Well it turns out that Open ChatBot (Chat GPT) is now the leading crawler above Google’s according to an study.
In retail, Agentic Commerce will be the first move towards letting AI buying on our behalf. So my prediction might become true before 2030.
My "audience" has expanded quite a bit the last 3 years.
Apart from regular human visitors now I get training bots like GPTBot and user-triggered agents (citations or search functionalities) like OAI-SearchBot or Claude-SearchBot. If these bots aren't in on my logs, my brand doesn't exist to AI.
Below an example of one of my websites with ZERO AI crawler activity but well visited by regular search engines:

Example from the Screaming Frog Server Log Analyzer, that shows no AI bot comes to a particular website (zero AI visibility).
🔎 What to check: Filter your logs by User-Agent. Look for these bots on your server logs:
GPTBot,ClaudeBot,PerplexityBot, andApplebot-Extended.
Problem 1: you do not get any AI crawler because of lack of relevant content. Your site has literally noting of interest to the millions of users of AI chatbots.
How to fix: match search market, create something of value for your humans
Problem 2: If AI bots are visiting your site but your response is a 403 Forbidden or 404 Not found, you basically blocked the bots to get to your site despite they want to.
How to fix: unless you actively want to block AI bots, arrange your server settings to allow bots
⚠ Hallucination note: it could be that AI bots make URLs up that never existed. Evaluate carefully and create those 301 despite you did not do anything to create this issue…
3. The Negative Audit
I learned this one from Pedro Dias. He calls it the "absence of signal". A page being crawled is the right behavior. Absence of signal is when a page that isn’t crawled but should.
Map your sitemap URLs against your log files.
⚠ How to test: If 30% of your "Money Pages" haven't been touched by Googlebot in 30 days, but your
/category/page/99/is getting hit daily, you have a structural internal linking crisis. Google can't index what it doesn't fetch.✅ How To Fix: All pages that should be crawled and are not, must be added in navigation, footer and overall internal linking sections. If they are money pages they have to be present all across the site.
Overload of links per page: it can happen each page has thousands of links. Many links might not be even reached by bots because there are just too many. Optimize internal links for crawlability and keep 200-500 internal links per page to stay safe. One common issue are those Mega-menus that load ALL navigation of the site at once. Remove that functionality and only show the relevant links per page.
JS Rendered links: it can happen the navigation is loaded with JavaScript only by user interaction. Bots won’t interact with the site as humans do, therefore all JS loaded navigation is pretty much invisible. Remove any JS-rendering on navigation. Raw HTML preferred.
4. The Rendering Gap (Static vs. JS)
Google uses a two-wave indexing process. First, it fetches the static HTML. Later, it renders the JavaScript. Nothing new here.
Your logs can show you if Google is getting "stuck" in wave one.
I am focusing on Googlebot (or similar). Google can render JS but it is not guaranteed it will. The least I can do is to ensure the bot comes for the second wave of JS rendering.
⚠ How to test: As Google might take days even weeks to come for the 2nd wave the best practice is best to monitor within a weekly or monthly timeframe.
❌ Bad signal: I have 10,000 requests/week for my Product Pages (HTML) but only 1,000 requests/week for the main JavaScript bundle (main.js).
JavaScript is not being crawler enough.
✅ Good signal: I have 10,000 requests/week for my Product Pages (HTML) and 12,000 requests/week for the main JavaScript bundle (main.js).
Google not only triggered 100% of the JS on each crawled page but it came to render JS on previous carwled pages that were in cue. This is good.
5. Wasted Crawl Budget
Finding wasted crawling resources is the easiest issue to spot. What I always search:
Search Parameters:
/?q,/?s,/?searchor similar that point to search pages that should not be crawled (let alone indexed).Faceted Navigation:
/?filter,/?color,/?topicor similar from filters. Every extra filter creates a new URL string. If your site has 10 filters you could end up easily with millions of combinations.Excessive Pagination:
/category/products/page/999/endless pagination usually created by silly HTML issues.Tracking & Session IDs:
/?utm_source=,/?sessionid=, or/?gclid=. These are often leaked from feeds, campaigns, social media, etc.
We should not aim for a perfect crawling setup. I like to keep 50% ratio between the pages that should exits (valid pages for the index) and the ones that should not (not valid for the index).
Here is an example of a bad valid/not valid pages you can easily do on your GSC:
My website has 94k pages know to Google
90k pages are not valid, that is 95% of not valid pages
Only 3k pages are actually suitable for the index > 5% of valid pages
This issue alone is costing this client to be at a loss of 40% of traffic from what it was.
The GSC helps me to understand the impact and the server logs to know all affected pages.

Bad ratio of non-valid pages for the Google Index
✅ How To Fix: there is not a one-fits-all solution for this. Each case is different. 2 things have to be implemented:
Remove the links entirely from being present in the HTML
Tag them with noindex,follow (not always)
Wait for them to be removed from the Google logs
After they are gone, block the URL patterns to avoid them to come back
Do you want me to check if your Server Logs?
Reply SERVER LOG and your domain name and I your current server status.
(Also if you reply to this email Google will know I’m legit and not label me as spam 🙏 )
My Top Picks
That’s it for today :)
Until next time 👋

—





