Installing the OTTO Pixel connects your site to Search Atlas’s AI engine — enabling scans, deployments, and automated SEO.
But even when the pixel is installed, OTTO may still show:
❌ “OTTO Not Installed.”
❌ “OTTO Not Detected.”
❌ “Missing crawl data.”
❌ Pixel not firing.
❌ No deployments verified.
Almost always, the cause is:
✅ Caching.
✅ Script placement.
✅ Duplicate installs.
✅ A blocked crawler.
This guide is the master troubleshooting playbook, covering all platforms and all root causes, with the newly standardized UI paths.
Let’s fix it. ⚡
🧭 1. Universal Troubleshooting Steps (Run These First!)
🧭 1. Universal Troubleshooting Steps (Run These First!)
These steps solve 80–90% of detection failures.
🛡️ 1.1 Whitelist the Search Atlas Crawler (Critical Step #1)
🛡️ 1.1 Whitelist the Search Atlas Crawler (Critical Step #1)
If your CDN/firewall blocks our user agent, OTTO cannot detect your pixel — even when installed perfectly.
✅ Cloudflare
Path: Cloudflare → Security → Bots
Disable:
Bot Fight Mode
Super Bot Fight Mode
✅ WordFence
WP Admin → WordFence → Firewall → Firewall Options
Set Web Application Firewall Status → Disabled → Save.
✅ Stop Bad Bots
WP Admin → Block Bad Bots → Settings → Settings tab
Disable Block All Bots
or add allowed user agent:
Search Atlas Bot (https://www.searchatlas.com/)
✅ Blackhole for Bad Bots
WP Admin → Blackhole → Settings → Whitelist User Agents
Add: Search Atlas Bot (https://www.searchatlas.com/)
✅ Shield Security
WP Admin → Shield Security → IP Rules → gear icon
Create New User Agent Rule → Whitelist:
Search Atlas Bot
➡️ Once whitelisted, continue to caching + pixel verification.
🔍 1.2 Check for Duplicate Pixel Installations
🔍 1.2 Check for Duplicate Pixel Installations
OTTO can only load once.
❌ Plugin + Manual Script = conflict
❌ GTM + Script = conflict
❌ Script installed twice = conflict
Duplicate OTTO Pixels break detection. OTTO cannot verify or enable if more than one pixel loads.
Use both checks below — they are the official double-validation process.
A) Manual check (HTML Source Method)
Open your homepage
Right-click → View Page Source
Press Ctrl + F / Cmd + F
Search for any of the following terms:
sa-dynamic-optimization data-uuid= searchatlas
You should see ONE instance only.
If you see 2, 3, or more → you have a duplicate.
B) Diagnostic check (Recommended, automated method)
OTTO Diagnostics automatically flags duplicates — even if you can’t see them in the source code.
Follow this path:
AI SEO → All Sites → select your site → Scan → Run Diagnostics
Possible results:
⚠️ Duplicate Installation Detected
OTTO found more than one script copy anywhere in your site (global headers, GTM, plugins, blocks, apps, templates).🟢 Deploys Verified — OK
You’re clean — only one pixel is active.
This method is required because:
✔ Some CMS inject scripts dynamically
✔ Apps/plugins can add their own loader
✔ GTM can fire a second copy you don’t see in HTML
✔ Minifiers/CDN inject combined scripts
If the diagnostic shows duplicates → proceed with platform-specific removal.
💡 1.3 Confirm Your Script Loads in the Network Tab
💡 1.3 Confirm Your Script Loads in the Network Tab
Open DevTools:
Right-click → Inspect
Go to Network
Reload page
Search for:
sa-dynamic-optimization
If FOUND → Pixel is firing
If NOT FOUND → Script is blocked or incorrectly placed
💾 1.4 Verify correct script placement
💾 1.4 Verify correct script placement
Correct placement:
<head>
<script id="sa-dynamic-optimization-loader" ...></script>
</head>
Incorrect placement causes failure:
❌ bottom of
<body>❌ footer injections
❌ delayed by theme builder
❌ added to a single page only
❌ unpublished template or inactive theme
🔧 1.5 Disable Caching / Minification Interference
🔧 1.5 Disable Caching / Minification Interference
Plugins like:
WP Rocket
LiteSpeed Cache
Nitropack
SiteGround Optimizer
Cloudflare Auto-Minify
Flying Scripts
…can delay or rewrite the pixel.
Add to your script tag:
data-noptimize data-cfasync="false"
Or exclude the pixel URL entirely.
🛠️ 1.6 Clear ALL caches (normalized across CMS)
🛠️ 1.6 Clear ALL caches (normalized across CMS)
🔹 Browser Cache
Hard reload:
Windows: Ctrl + Shift + R
Mac: Cmd + Shift + R
Or open an incognito window.
🔹 WordPress Cache
If using Search Atlas WordPress Plugin (recommended method):
WP Admin → Search Atlas → Settings
Top-right dropdown → Advanced
Scroll → Error Logs
Click: Clear All Cache Plugins
If no cache plugins exist, WP shows:
“No cache plugins detected.”
This clears:
WP Rocket
LiteSpeed
W3 Total Cache
SiteGround Optimizer
All detected cache plugins
If NOT using Search Atlas plugin → clear cache in each cache plugin or host panel.
🔹 CDN / Firewall Cache
Examples:
Cloudflare: Caching → Purge Everything
Sucuri: Performance → Clear Cache
🔹 Hosting Cache
Common hosts: WP Engine, Kinsta, SiteGround
Use their Purge Cache button.
🔹 CMS-native cache
These auto-refresh when saving:
Shopify (save
theme.liquid)Wix (click Publish)
Squarespace (Save)
Webflow (Publish to Selected Domains)
No extra steps needed.
🧩 2. Platform-Specific Troubleshooting
🧩 2. Platform-Specific Troubleshooting
🟩 2.1 WordPress — Plugin Installation
🟩 2.1 WordPress — Plugin Installation
🔥Most common causes
Plugin + manual script + GTM = multiple OTTO loaders (duplicate installation)
“Disable OTTO for logged-in users” = ON → Pixel never loads while logged in
OTTO Server-Side Rendering (SSR) disabled → header not rendered for crawler
Theme builders are failing to print
<head>fully (Elementor, Divi, Oxygen, Bricks, Kadence)Cache/minifiers rewriting, delaying, or stripping the Pixel script
Hard-coded scripts left over in
header.php,functions.php, or child themes
1️⃣ Use ONLY ONE installation method
Recommended: Search Atlas WordPress Plugin
Do not combine:
plugin
GTM
manual
<script>in theme
Use one source of truth → the plugin.
2️⃣ Verify plugin configuration
Path:
WP Admin → Search Atlas → Settings
Check that:
Search Atlas API Key is populated
Plugin Auth Token is active
OTTO Pixel UUID matches your project in Search Atlas
3️⃣ Activate OTTO Server-Side Rendering (SSR)
Path:
WP Admin → Search Atlas → Settings → Advanced Settings
Toggle ON:
✔ Enable OTTO Server-Side Rendering
This ensures:
OTTO renders in the server-generated
<head>Search Atlas crawler sees the script instantly
All OTTO deployments (meta tags, titles, schema) appear in HTML source
Without SSR, many themes fail to render the <head> consistently.
4️⃣ Optional: Disable OTTO for logged-in users — only if needed
In General Settings:
If you want to preview raw content while editing:
Turn ON: Disable OTTO for logged-in users
Otherwise, leave it OFF.
If it's ON and you’re logged in → Pixel will not load for you.
5️⃣ Remove duplicate scripts
Search your theme files:
header.phpfunctions.phptheme settings
child themes
GTM tags
Remove any manual <script id="sa-dynamic-optimization-loader">…</script> that isn't injected by the plugin.
6️⃣ Clear ALL caches
Clear in this order:
Plugin caches:
WP Rocket
LiteSpeed
W3 Total Cache
Nitropack
SiteGround Optimizer
Theme builder caches:
Elementor
Divi
Kadence
Server/hosting cache
CDN cache (Cloudflare → Purge Everything)
Browser hard reload (Ctrl+Shift+R / Cmd+Shift+R)
7️⃣ Log OUT of WordPress
This ensures:
OTTO Pixel loads for public users, not just admins
No role-based output suppression interferes
Visit:
homepage
2–3 internal pages
View Source → search: sa-dynamic-optimization
There should be ONE instance.
8️⃣ Run Diagnostics in Search Atlas
Path:
AI SEO → All Sites → Select Site → Scan → Run Diagnostics
This will confirm:
Pixel detected
No duplicates
Correct UUID
SSR functional
OTTO Engaged
🟨 2.2 Google Tag Manager
🟨 2.2 Google Tag Manager
Common Issues
Incorrect tag type
Trigger too slow (Page View instead of Initialization)
Container not published
Duplicate scripts installed manually
GTM blocked by CSP headers
Fix
GTM → Tags → New → Custom HTML
Paste the full OTTO script
Trigger → Initialization – All Pages (critical)
Publish the container
Remove any other OTTO scripts from the theme
Run Diagnostic Scan
🟦 2.3 GoHighLevel (GHL / HLProTools)
🟦 2.3 GoHighLevel (GHL / HLProTools)
Common Issues
Script added to a single page
Script added in Footer
Script not saved as Global
Script loads too late
Fix
Use one Global Section
Insert Pixel inside a Custom Code block
Mark the section as Global
Save → confirm “Apply to Global Section.”
Publish
Run Diagnostics
🟪 2.4 Wix
🟪 2.4 Wix
Common Issues
Script added only to the homepage
Script added to the footer
Changes not published
Fix
Wix Editor → Settings → Custom Code
Add Code → paste pixel
Apply to All Pages
Load Code: on Each Page Load
Location: Head
Save + Publish
Run Diagnostic Scan
🟥 2.5 Shopify
🟥 2.5 Shopify
Common Issues
Script placed too low in
<head>Script accidentally placed in
<body>Theme.liquid not saved
Shopify cache delays updates
Fix
Shopify → Online Store → Themes → Edit Code
Open theme.liquid
Find
<head>Paste the OTTO script immediately after
<head>Remove any page-level duplicates
Save and Publish
Clear site + browser + CDN cache
Run Diagnostic Scan
🟫 2.6 Other CMS (Webflow, Squarespace, Carrd, etc.)
🟫 2.6 Other CMS (Webflow, Squarespace, Carrd, etc.)
Common Issues
Header injection limited
Script added only to partial pages
Script placed in body
Fix
Site Settings → Custom Code → Head
Paste OTTO Pixel
Apply to All Pages
Publish changes
Run Diagnostic Scan
🟣 3. First-Time Installations (Initial Crawl Behavior)
🟣 3. First-Time Installations (Initial Crawl Behavior)
OTTO’s first crawl can take up to 24 hour,s depending on site size.
You may see:
“Site processing is still in progress.”
“Waiting for data…”
“Pixel detected — awaiting first scan results.”
This is normal!
If past 24 hours:
AI SEO → All Sites → Scan → Run Diagnostics → Re-run Crawl
Wait 10–15 min → Refresh.
🔍 4. Post-Installation Pixel Validation
🔍 4. Post-Installation Pixel Validation
Once everything is installed:
✔ Step 1 — Validate in DevTools
Network → search:
sa-dynamic-optimization
✔ Step 2 — Confirm Script in <head>
Elements → search:
sa-dynamic-optimization-loader
✔ Step 3 — Run Pixel Diagnostic Scan
Path:
AI SEO → All Sites → Scan → Run Diagnostics
Expect:
✔ Pixel Detected
✔ No duplicates
✔ Fixes deployed
You’ve now completed every essential and advanced step required to ensure the OTTO Pixel installs cleanly across any CMS. This wasn’t just an installation. This was you unlocking the foundation of automated, AI-powered SEO.
Whether your website runs on WordPress, Shopify, Wix, GTM, Webflow, or a custom stack, each adjustment you made allows OTTO to:
✨ Scan your pages
✨ Deploy intelligent optimizations
✨ Improve crawlability and visibility
✨ Strengthen your site’s search performance
If you’ve followed the full guide and OTTO still doesn’t detect your pixel, you’re rare, and we want to help. Our support team can take it from here. Otherwise, congratulations, your site is now ready for automated SEO at scale. 🚀



