Proof that happens in real time.
Live visitors, FOMO purchases, post engagement and trigger-driven CTAs, all overlaid on the widget surfaces you already run. Reads from your real Shopify + widget events. Six overlay types, one config surface, zero popup-builder mess.
- Six overlay types. FOMO, live visitors, post-stats, triggers, live feed, smart
- Reads from real Shopify + widget event streams
- Per-PDP / per-collection scope, not a sitewide popup
- Smart overlay (beta) picks the right type per session
Live visitors
24 shoppers viewing this product right now
Visitors now
24
Last hour
142
Last order
4 min ago
One config surface. Six things it can say.
Each overlay type has a dedicated endpoint. You configure the scope (widget / PDP / collection), the trigger and the copy, Idukki handles the live feed, rate limits and the rendering inside your widget.
- π₯Maya just boughtLinen blazer Β· 2 min agoπ₯Aaron just boughtLinen blazer Β· 4 min agoπ₯Lin just boughtLinen blazer Β· 6 min ago/api/overlays/fomo
FOMO
"3 people bought this in the last hour." Reads from Shopify order events. Configurable lookback window, optional region filter, decay if no recent purchase.
- 24viewing right now/api/overlays/visitors
Live visitors
"24 viewing right now." Aggregated from your widget session pings, never user-identifying. Per-PDP or per-collection scope.
- saves4,212add-to-cart287/api/overlays/post-stats
Post stats
"4,212 saves Β· 287 add-to-carts" overlaid on a UGC post. Pulls from the same analytics events the widget already fires.
- 3rd view Β· nudge/api/overlays/widget-event
Widget-event trigger
Fires an overlay after a specific widget interaction, e.g. third gallery view, video played to 80%, hotspot tapped without add-to-cart.
- π«π·PDP view Β· ParisliveπΊπΈCart add Β· NYCliveπ―π΅Order Β· Tokyoliveπ¬π§PDP view Β· Londonliveπ«π·PDP view Β· ParisliveπΊπΈCart add Β· NYCliveπ―π΅Order Β· Tokyoliveπ¬π§PDP view Β· Londonlive/api/overlays/live
Live feed
Streaming feed of real activity on your store: views, cart adds, completed orders, country flag. Optional sound for the bold.
- /api/overlays/event
Smart overlay (beta)
AI picks the overlay type per session based on the shopper signal: hesitant shoppers see FOMO, fast browsers see live visitors, returners see post-stats.
Live proof, not popup theatre.
We picked the constraints on purpose. Overlays read from real activity, scope to a single widget, and never seed numbers. If the counter is empty for your store, it shows blank, not a fake fall-back.
Not a popup builder
Overlays sit on top of your widget surfaces, not as a sitewide modal. If you want a fullscreen sign-up popup, use the lead-capture widget instead.
Reads real events
FOMO needs Shopify order webhooks. Live-visitors needs widget session pings. No "social proof for the sake of it" with seeded counters.
Per-PDP / per-collection scope
You scope each overlay to a widget surface or collection. We don't auto-fire overlays across your entire storefront.
Stop renting six tools. Ship one.
Spin up your first widget in 4 minutes. Migrate from Bazaarvoice, EmbedSocial, Tolstoy or Videowise in a day. Your CFO will love us. Your CRO already does.
- No credit card
- Cancel anytime
- SOC 2 + GDPR