Installing the OTTO Pixel is the first step to unlocking AI-powered SEO automation — but when it's installed more than once, OTTO may:
- Show "Duplicate Installation Detected" in Diagnostics
- Fail to fully enable
- Misread page state or slow down verification
The tricky part: you might not realize it's installed twice (the plugin, GTM, theme code, etc.).
This guide explains exactly how to confirm, fix, and prevent duplicates across WordPress, Shopify, Wix, GTM, GoHighLevel, Webflow, Squarespace, custom sites, and more.
🔎 TL;DR — What "duplicate pixel" really means
OTTO has detected multiple instances of the OTTO Pixel loading on your site. In some cases, incomplete setup or missing site metadata on certain platforms can trigger false duplicate-detection warnings.
Typically, actual duplicates occur when:
- WordPress plugin + GTM + manual
<script> - Script injected on multiple templates or pages
- Apps, CDNs, or minifiers re-injecting the same script
Before diagnosing a duplicate, always verify that all installation steps are complete and basic site information (like business address on certain platforms) is filled in. OTTO needs one clean installation path and one UUID per project.
🧭 Quick path: How to confirm you have a duplicate
-
Use both of these methods:
1) Check the live HTML manually
-
Open your homepage in a browser (the same domain you configured in Search Atlas).
-
Right-click → View Page Source.
-
Press Ctrl+F (Windows) / Cmd+F (Mac) and search for:
sa-dynamic-optimization searchatlas data-uuid -
Count how many times the OTTO script appears:
- If you see two or more script blocks with the OTTO src/UUID →, you definitely have duplicates.
- If you only see one, it may still be duplicated via GTM or apps → continue with method 2.
2) Confirm via OTTO Diagnostic (recommended)
-
Go to Search Atlas → OTTO SEO → All Sites.
-
Click on your site to open the OTTO SEO Automation dashboard.
-
Click Scan → Run Diagnostics.
OTTO will begin scanning your site for the installed Pixel.
During this stage, you'll see the message:
"Running Diagnostics…
We're checking the selected page for any OTTO implementation issues.
This might take a few seconds — hang tight!A detailed report will be ready shortly."
Wait for the diagnostic to complete, then scroll through the results.
If OTTO sees multiple instances, you'll see a message like:
- "Duplicate Installation Detected"
If you see that status, you can be sure OTTO is detecting more than one Pixel, and you should go ahead with the platform-specific fix.
-
🧰 Universal Fix Checklist (do this before you dive into platform specifics)
Goal: keep one install method, remove everything else.
-
Choose ONE source of truth
- WordPress plugin or
- GTM or
- Manual
<head>script or - CMS global "Custom Code / Code Injection" or
- GHL Global Section
Never mix methods (e.g., plugin + GTM + manual script).
-
Remove all other copies of the OTTO script
- Delete extra
<script>tags from theme files, page builders, embeds, or extra sections. - Remove GTM tags that inject OTTO if the plugin is your source.
- Remove plugin / app embeds if GTM or manual script is the source.
- Delete extra
-
Clear caches everywhere
-
Browser: hard reload (Ctrl+Shift+R / Cmd+Shift+R) or open in Incognito.
-
WordPress cache (via Search Atlas plugin):
- WordPress → Search Atlas → Settings → Settings dropdown → Advanced → Error Logs → Clear All Cache Plugins.
-
Cache plugins / host: click "Purge / Clear All Cache" in WP Rocket, LiteSpeed, W3TC, host panel, etc.
-
CDN / WAF: e.g. Cloudflare → Caching → Purge Everything.
-
CMS publish: Shopify/Wix/Webflow/Squarespace → Save + Publish / Publish to domains.
-
-
Force OTTO to re-check
- Search Atlas → OTTO SEO → All Sites → Select your site → Scan → Run Diagnostics.
- Wait 3–5 minutes and refresh.
If the duplicate is fully resolved, the diagnostic will stop showing the "Duplicate Installation Detected" message.
🖥️ Platform-by-Platform Fix Playbooks
🟩 WordPress (Plugin vs GTM vs manual script)
Most common root causes
- OTTO installed via the Search Atlas plugin and via GTM or theme/header code.
- Script added in
header.phporfunctions.phpplus plugin injection. - Staging → production migration that left old code and the plugin active.
- Cache/minification plugins cloning or delaying the script.
How to fix (plugin as source of truth — recommended)
-
Keep the Search Atlas WordPress plugin as the only OTTO source.
-
Remove any OTTO scripts from:
- GTM tags
header.php,functions.php, or other theme files
-
In WordPress → Search Atlas → Settings:
- Ensure Authentication Successful.
- API Key, Plugin Auth Token, and OTTO Pixel UUID are populated.
-
Clear cache via:
Search Atlas → Settings → Settings dropdown → Advanced → Error Logs → Clear All Cache Plugins.
If GTM is your source of truth instead
-
In WordPress, disable OTTO features in the plugin or disconnect Pixel injection.
-
Remove any manual OTTO scripts from theme files.
-
In GTM:
- Use one Custom HTML tag with the OTTO script.
- Trigger: All Pages or Initialization – All Pages.
- Advanced Settings: fire Once per page.
-
Publish the container.
-
Re-run OTTO Diagnostics.
🟨 Google Tag Manager (GTM)
Common root causes
- Two GTM containers installed simultaneously.
❓ Troubleshooting: When It's Not Actually Duplicates
Some platforms show duplicate-detection symptoms that aren't actually caused by multiple pixel installations. Here's how to rule these out:
- Duda sites: If OTTO shows "Not Installed" or similar despite seeing the pixel live on your site, ensure you've completed the "Continue Installation" step in your Duda site settings. Incomplete setup can trigger false detection errors.
- Lovable-built sites: OTTO requires basic site metadata to detect your pixel properly. Verify that your business address field is filled in and complete, then run a manual recrawl to allow OTTO to refresh its detection.
- Lovable AI builder: If you're using the Lovable AI site builder, check your site code for MutationObserver conflicts that may prevent OTTO deployment. These conflicts can block the pixel from initializing correctly.
- Shopify: Manual code injection (adding scripts directly to theme files) can cause theme errors and prevent proper OTTO detection. If you've manually injected the OTTO pixel, we recommend reaching out to support for assistance with proper integration.