🔍 Overview
If vehicle names on your inventory pages are displaying incorrectly after page load — for example, a Jeep Wrangler listing showing as Jeep Compass — this is most likely caused by OTTO's heading optimization script overwriting text that is dynamically injected by your website's JavaScript, such as a Google Tag Manager (GTM) container or a third-party inventory feed script.
This article explains why this happens, how to identify the conflict, and what steps to take to resolve it.
⚙️ Why This Happens
OTTO's heading optimization works by rewriting H1 and H2 tag content based on the SEO recommendations it generates at the time of optimization. However, some automotive dealership websites use dynamic scripts — often loaded through GTM or a vehicle inventory platform — to populate page headings with the correct vehicle name after the initial HTML has loaded.
When both systems try to control the same heading element, a conflict occurs:
- OTTO writes the optimized heading text during or after page render.
- The dynamic inventory script also runs post-render and attempts to inject the correct vehicle name.
- Depending on execution order, one script overwrites the other — resulting in the wrong vehicle name being displayed.
This issue has been observed with GTM containers that trigger vehicle-data scripts on DOM-ready or window-load events, and is not limited to any single inventory platform.
🔎 How to Identify the Conflict
Before making any changes, confirm that OTTO's script is the source of the overwrite by following these steps:
- Open the affected inventory page in your browser (for example, your /new-jeep page).
- Right-click the incorrectly displayed vehicle name heading and select Inspect to open browser developer tools.
- In the Elements panel, check whether the displayed text matches what OTTO has written or what your inventory script expects.
- Switch to the Network or Console tab and look for requests or script executions related to your GTM container ID (for example, GTM-TCCS243) and any inventory or vehicle-data scripts it fires.
- Use the Event Listener Breakpoints in the Sources panel to watch for DOM mutations on the heading element — this will show you which script modifies the text last.
✅ How to Resolve the Issue
Once you have confirmed the conflict, use one or more of the following approaches to fix it:
- Exclude the affected URL pattern from OTTO heading optimization. In Search Atlas, navigate to OTTO SEO using the left sidebar. Review the heading optimization settings for the affected page and disable or exclude heading rewrites for dynamic inventory pages where vehicle text is controlled by a third-party script.
- Check for a heading length suffix issue. A known issue caused OTTO to append text such as "Length n(number)" to heading suggestions. If you see this pattern in the deployed heading, the optimization may need to be re-applied after this fix was resolved on the platform side.
- Coordinate script execution order in GTM. If your development team manages the GTM container, ask them to ensure the inventory vehicle-data script fires after OTTO's dynamic_optimization.js has completed. This can be done by adjusting tag firing priority or using a custom trigger that waits for OTTO's script to finish.
- Re-deploy the OTTO optimization after resolving the conflict. Once the script conflict has been addressed, return to OTTO SEO in the left sidebar and re-apply the heading optimization for the affected pages so that the correct, intended text is written cleanly without interference.
- Verify the fix after deployment. Reload the affected inventory page in an incognito window and confirm the correct vehicle name appears in the heading immediately after page load and after any dynamic scripts have run.
🚗 Special Considerations for Automotive Inventory Pages
Automotive dealership websites frequently use dynamic vehicle data because inventory changes daily. Keep these best practices in mind to prevent future conflicts:
- Avoid applying OTTO heading optimizations to URL patterns that are fully controlled by your inventory management system (IMS) or dealer platform.
- Focus OTTO heading optimization on static or semi-static pages such as brand landing pages, service pages, and location pages.
- If your inventory platform injects H1 text dynamically, treat those headings as outside OTTO's scope unless your development team can guarantee a stable execution order.
- After any GTM container update, re-test affected inventory pages to ensure no new script conflicts have been introduced.
💬 Still Seeing Incorrect Vehicle Text?
If you have followed the steps above and the incorrect vehicle text is still appearing, our team can investigate your specific GTM container configuration and OTTO deployment in more detail. If you need further assistance, open the chat widget in the bottom-right corner of the platform and type human teammate to be connected with a member of our team.