“How to Structure Voiceflow Flows for Large Image-Based Catalogs
So I've got a challenge in front of me...
I’m building a conversational assistant for a client that sells 200+ appliances (TVs, air conditioners, fridges, microwaves, stoves). Instead of using a structured database, we’ll be manually uploading the product posters into Voiceflow using card/carousel blocks (each poster already has price, model, and size).
My approach so far:
Create category-based flows (e.g., TVs, ACs, etc.).
When the user asks for a category (e.g., “Show me TVs”), I route them into a card/carousel block that displays the right set of posters.
Add clarifying questions (for TVs: “What size?”) to route to the correct subset of images.
If the request is unclear or filters don’t match, I plan to fall back to showing all posters for that category so the conversation never stalls.
Allow topic switching mid-conversation (e.g., “Actually, show me microwaves”) without breaking the flow.
My question 🙏:
👉 What’s the best practice in Voiceflow for managing a large number of manually uploaded card images? (I saw something about OCR + tagging layer outside of Voiceflow and expose it via a custom API)
Is there a cleaner way to structure and scale this so it doesn’t become unmanageable with 200+ images?
Any tips from the team (or @Braden (Voiceflow CEO) ) on keeping this architecture scalable? I feel like uploading the images manually is not going with an "AI" approach.
2 Replies
Hi, I don't know if I can help, but I'll try. Manually uploading 200+ cards in Flow will soon fall apart. Create a catalog outside of Voiceflow (Airtable/Sheets), pull data dynamically into VF, and render carousels from JSON. Management then takes place only in the catalog, not in the canvas.
What works in practice: Catalog outside of VF: columns category, brand, model, size, price, image_url, tags[]. Host images via URL (CDN/Drive), do not upload to VF. Filtering: Airtable step or API Step (v2) returns filtered results by intent/slots (e.g., TV + 55–65"). In the JavaScript step, remap the results to card fields and send them in batches (8–10) to the Carousel step; add "Show more." Controls: buttons on cards with "listen" for details/comparison, easy category skipping ("show me microwaves"). Knowledge base for text responses (FAQ, policies), not for product inventory; keep the catalog in Airtable/API. Uniform card templates, controlled vocabulary, pagination, optional tagging layer; OCR only if you really don't have structured data. ✌🏻
Got it awesome! Will start working on it