π In this article
- TL;DR β key before/after numbers
- About the store: 30,000 SKU houseware on OpenCart 3
- Before AI Search: 30% zero-results and weak relevance
- Why isklad chose AI Search over Klevu/Algolia
- Install and reindex 30,000 SKU in 1 hour
- After: 92.7% relevance, bounce -26 p.p., +14% conversion
- Technical: how 30k indexing works without store crash
- Lessons learned
- FAQ
In autumn 2025 isklad.com.ua reached out β a Ukrainian online store of houseware, home goods and accessories, ~30,000 SKU on OpenCart 3, in three locales (Ukrainian/Russian/English). Complaint was simple: "customers chat in saying they can't find a product, even though it's in the catalog." Here's how it looked in numbers and how we fixed it.
TL;DR β key before/after numbers
| Metric | Before AI Search | After AI Search v1.0.5 | Change |
|---|---|---|---|
| Top-3 relevance (manual review) | ~58% | 92.7% | +34.7 p.p. |
| Zero-result rate | ~30% | ~3% | -27 p.p. |
| Bounce from search pages | 78% | 52% | -26 p.p. |
| Typo support | none | yes | β |
| Cross-language matching | none | yes (UA/RU/EN) | β |
| Setup + reindex time | β | ~1 hour | β |
About the store: 30,000 SKU houseware on OpenCart 3
isklad.com.ua is a Ukrainian online store with own shop+warehouse model. Search-relevant features:
- Very wide catalog: dinnerware sets, cups, plates, glasses, kitchenware, kitchen textiles. One product can be named 4-6 different words.
- Three languages: Ukrainian + Russian (UA market) + English (tourists/foreign clients). Each product indexed in all three.
- Complex terminology: glass-ceramic / ceramic / cerΓ‘mica β same materials in different words and languages.
- OpenCart 3.0.4 + customized theme + 8 additional modules (typical enterprise stack).
Before AI Search: 30% zero-results and weak relevance
Before our implementation isklad used standard OpenCart search + one of the popular "smart search" modules from the marketplace. Real picture from GA4 over a month:
Most painful query types: morphology UA/RU, mobile typos, cross-language, synonyms.
Why isklad chose AI Search over Klevu/Algolia
| Solution | Monthly cost for 30k SKU | Integration complexity |
|---|---|---|
| Klevu | ~$299/mo (Pro) | JS-overlay, 2-7 days onboarding |
| Algolia | ~$500/mo (custom) | API integration, expensive for UA market |
| AI Search v1.0.5 | $29/mo (Business) | 5-minute zip installer |
Annual savings vs Klevu: $3,240. Vs Algolia: ~$5,600.
Install and reindex 30,000 SKU in 1 hour
Setup in production (live OpenCart 3 with real customers):
- 0:00 β sign up at ai-search.cc, pay Business plan
- 0:02 β download zip, install via Extensions β Installer
- 0:04 β Refresh modifications, add license key, enable
- 0:05 β clicked Reindex now. Store stays available for buyers
- 0:08 β first 1000 products in DB
- 0:32 β 50% (15,000 products). Progress bar in admin. Site works, search-fallback to old LIKE
- 0:54 β 100% (30,000 products indexed in three languages = 90,000 embeddings)
- 0:55 β switched search-handler to AI
- 1:00 β final check of top-50 GSC queries: all find products. Done.
After: 92.7% relevance, bounce -26 p.p., +14% conversion
Relevance
Owner did manual review of top-100 queries over a week: 92.7% of queries had a relevant product in top-3. Before AI Search this was ~58%.
Zero-result rate
Dropped from ~30% to ~3%. The remaining 3% are products genuinely missing from catalog.
Bounce rate
Bounce from search pages: 78% β 52% (-26 p.p.).
Technical: how 30k indexing works without store crash
Query architecture
- Buyer types query (e.g. "white ceramic cup")
- OpenCart controller via event hook sends query text to AI Search API
- API runs query through embedding model
multilingual-e5-large-instructon GPU. Returns 1024-dim vector - Vector compared against 90,000 product vectors in packed binary format (composite index) β faster than JSON-text representation
- Top-K (default K=40) product IDs returned to OpenCart
- OpenCart controller renders products through standard product/category/twig pipeline
Step 3 (embedding compute): ~50ms. Step 4 (vector similarity search): ~30ms. Network: ~70ms. Render: ~50ms. Total ~200ms.
Reindex 30,000 SKU without crash
oc_ai_embeddings). Shop-server load during reindex ~5% CPU.For isklad: 30,000 products Γ 3 languages = 90,000 embeddings. Batch of 50 products processes on GPU in ~1 second. 1800 batches = ~30 minutes theoretical. Real time: 49 minutes.
Storage in packed binary format
Each embedding β 1024 float32 numbers = 4096 bytes. For 90,000 embeddings β ~350 MB.
Previously we stored embeddings as JSON-text (~8000 bytes/embedding). In v1.0.5 migrated to packed float32 binary (PHP pack('f*', ...)) with magic-header AIS1:
- ~2Γ less storage (350 MB vs ~700 MB for 90k embeddings)
- ~3-5Γ faster read/parse (
unpack('f*')vsjson_decode) - Composite SQL index on
(store_id, language_id, type)β main query speedup factor
Lessons learned
- Get baseline measurements BEFORE launch. isklad gave us GA4 access; we recorded bounce 78% and ~30% zero-result. Without these β "got better" is just a feeling. With them β concrete business case.
- Production reindex is fine if architecture is right. Embedding compute on our side means shop-server doesn't suffer.
- Multilingual-first model critical for UA market. Standard OpenSearch/MeiliSearch configs are trained mostly on English.
- Manual relevance review > automated benchmarks. Owner went through top-100 queries manually.
- Cancel-anytime is a selling feature. Owner mentioned annual contract is what stopped him from picking Klevu.
For agencies and OpenCart developers
If you implement OpenCart stores for clients, AI Search closes one of the most-complained-about issues β search that doesn't find products. The isklad case is our reference: 92.7% top-3 relevance, bounce -26 p.p., +14% conversion in 4 weeks.
What you get
- 20% recurring commission on every client subscription (Starter/Business/Pro/Enterprise)
- Free Business-tier for 30 days on dev copies β test on the client's real catalog
- Implementation support via Telegram/email during rollout
- White-label option on request for agencies with 5+ clients
Best fit
Stores with 1kβ50k SKU, 2+ languages, search-quality complaints. Particularly effective for UA/RU/PL/DE catalogs. Furniture, houseware, electronics, fashion, auto-parts, books β categories where morphology + synonyms genuinely matter.
Partnership contact: partners@ai-search.cc β tell us how many clients you handle and we'll discuss terms.
FAQ
How long does reindex take for a 50,000 SKU catalog?
~80-90 minutes on Business / Pro tier. ~30-40 min on Enterprise (dedicated GPU). Store doesn't crash.
What about 100,000 SKU?
Pro tier ($79/mo, 50,000 SKU limit) won't fit. Need Enterprise ($199/mo unlimited). Reindex 100k SKU β 2-3 hours.
Do I need to reindex after adding new products?
No. AI Search auto-indexes new products in background (cron, every 15 min). Reindex needed only after bulk changes.
What about transitional state during reindex? Do buyers see broken search?
No. AI Search has fallback to standard LIKE. While indexing isn't complete β buyer keeps seeing OpenCart results. After successful reindex search-handler auto-switches to AI.
Can I do a similar case for my store?
Yes. Sign up, install AI Search Free (up to 200 SKU). For 1k+ SKU pick a tier matching your catalog. Need help β email [email protected].