- Byte Legions
- Odoo Technical
“Google can’t find our products.”
That’s exactly what a client told me last month. They run an eCommerce business selling tractor parts, with thousands of SKUs across multiple brands and models.
The issue was alarming:
When customers searched for something as specific as “John Deere 4020 parts”, their website simply did not appear.
The products were there.
The demand was there.
But Google couldn’t see them.
The real problem was discoverability.
The Root Cause — A Search Engine Blind Spot
After auditing the site, the issue became clear very quickly.
What Google Was Seeing
- Over 30,000 equipment models in the database
- Only ~200 pages indexed by Google
What Was Missing
- No sitemap
- No logical URL hierarchy
- No crawlable structure for search engines
From Google’s perspective, most of the catalog simply did not exist.
The Solution — An SEO-First Parts Finder Architecture
Instead of adding more content or plugins, we focused on structure.
We built a hierarchical Parts Finder designed specifically for SEO.
URL Hierarchy We Implemented
Equipment Type → Brand → Model → Parts
Each level was given its own clean, crawlable URL, such as:
/type/type/tractor/type/tractor/brand/john-deere/type/tractor/brand/john-deere/model/4020
This allowed:
- Clear topical relevance
- Logical internal linking
- Proper crawl depth for Google
The Real Game-Changer — Dynamic Sitemap Generation
The most critical piece was the dynamic sitemap system.
Instead of manually managing URLs, we created sitemap generators that automatically:
- Crawl the live database
- Detect every valid equipment–brand–model combination
- Generate URLs on the fly
The Technical Core (Simplified)
Here’s a simplified example of how the sitemap logic works:
@staticmethod
def sitemap_types(env, rule, qs):
for equipment in env['tractor.model'].search([]):
yield {
'loc': 'type%sbrand%smodel%s' % (...)
}
Why This Matters
This function runs every time Google requests
sitemap.xmlURLs are generated from real-time data
New models automatically appear without manual work
In short:
The sitemap stays perfectly in sync with the database.
The Results — Fast, Scalable, and Maintenance-Free
Within days, the impact was visible.
Measurable Outcomes
30,000+ pages added to the sitemap
Automatic updates for new models
Zero manual maintenance
Google began indexing new pages within 48 hours
Final Takeaway
Sometimes, the best SEO solutions are not about:
Adding new features
Writing more content
Chasing algorithms
They’re about making existing content discoverable.
If search engines can’t find your pages, they might as well not exist.
Your Turn
What’s your biggest SEO challenge with dynamic or database-driven content?
Book a consultation and let’s make your content discoverable.
For more insights into Odoo Web Development, check out our other blogs at Byte Legions Blog.





Comments are closed