A store with thousands of products kept going down under a swarm of bots crawling filters; KINTO stabilized it in days and migrated it to a headless shop whose listing weighs ≈1% of what it did.
Problem
The WooCommerce store went down intermittently: a swarm of bots crawled the combinatorial explosion of filter URLs, bypassed the cache and saturated the database. On top of that: thousands of products with poor data and zero prices from a mapping error.
Signals
- Market: Market demand was not measured in this engagement: the problem was technical and about data quality.
- Business: A retailer with several physical stores and free in-store pickup.
- User experience: The store listing weighed several megabytes, and the filters were useless and hard to use on mobile.
- Support: WhatsApp support per store and a store locator map.
How we understood it
- Server diagnosis: access logs of tens of gigabytes, root cause proven.
- Source catalog analysis and reconciliation against the client’s Excel inventory: thousands of products matched, hundreds with no match.
What we built and why
- Immediate stabilization of the old site: early response to filter URLs without touching the database, filtering of the bot traffic at the CDN, and disk cleanup.
- Programmatic migration to the commerce platform, with image repair and brand and type enrichment on thousands of products (dry run by default).
- Headless store with search, bottom-sheet filters for mobile, a stable category hierarchy, cart, WhatsApp per store, a map,
llms.txt/ai.txtand segmented sitemaps. - Reproducible exclusion policy driven by the client’s Excel, with tests and continuous integration: an excluded product appears in no page, search, sitemap or AI file.
Why this way: The exclusion comes from one source so it applies everywhere (pages, search, sitemaps and AI files), with tests and continuous integration.
Transformation
-
Store listing from several MB to ≈0.1 MB (static pagination).
-
Filter URLs from ≈3 s to ≈0.5 s and bot traffic cut to a fraction, before the migration.
-
What appears in the channel is governed by one reproducible exclusion policy.
-
Thousands of products enriched with brand and type.
-
products migrated from WooCommerce: over a thousand (from a public catalog of several thousand) (measured)
-
store listing weight: from several MB to ≈0.1 MB (measured)
-
response time on filter URLs: from ≈3 s to ≈0.5 s (measured)
-
what appears in the channel: a reproducible exclusion policy (measured)
What we don’t know yet
- Later sales and conversion: no evidence.