home / case studies / Middle East multi-category retailer (composite)
Data Streaming

Clickstream and Inventory Event Mesh for Omnichannel Personalisation

We unified web, app and in-store events into a single streaming layer that powers personalisation, low-stock alerts and live merchandising dashboards. Marketing and supply teams now act on the same real-time picture.

Middle East multi-category retailer (composite) · Data Streaming

Clickstream and Inventory Event Mesh for Omnichannel Personalisation

Challenge

High volume spikes during seasonal sales, and regional data-residency requirements. We used tiered storage, autoscaling consumers and region-pinned clusters with replicated, anonymised aggregates only.

Approach

We introduced a lightweight event SDK for web and mobile, server-side event collection, and Kafka topics partitioned by customer and SKU. Flink SQL jobs compute session features, rolling product affinity and store-level stock velocity. Results feed a Redis feature cache for on-site recommendations and a ClickHouse cluster for sub-second dashboards. Consent flags travel with every event, and a privacy filter drops or hashes identifiers based on the consent state.

Outcome

Recommendations reflect in-session behaviour rather than yesterday's Earlier low-stock signals during promotions, reducing missed sales Illustratively ~20–35% lower cost per million events versus the previous vendor tag pipeline One consent-aware event model shared by marketing, product and supply chain Stable performance through peak sale events

✓Recommendations reflect in-session behaviour rather than yesterday's
✓Earlier low-stock signals during promotions, reducing missed sales
~20–35%Illustratively lower cost per million events versus the previous vendor tag pipeline

Problem solved

Personalisation ran on day-old data, and store stock-outs during promotions were noticed only after customer complaints.

What we built

We introduced a lightweight event SDK for web and mobile, server-side event collection, and Kafka topics partitioned by customer and SKU. Flink SQL jobs compute session features, rolling product affinity and store-level stock velocity. Results feed a Redis feature cache for on-site recommendations and a ClickHouse cluster for sub-second dashboards. Consent flags travel with every event, and a privacy filter drops or hashes identifiers based on the consent state.

Benefits

Recommendations reflect in-session behaviour rather than yesterday's Earlier low-stock signals during promotions, reducing missed sales Illustratively ~20–35% lower cost per million events versus the previous vendor tag pipeline One consent-aware event model shared by marketing, product and supply chain Stable performance through peak sale events

KafkaFlink SQLRedisClickHouseWeb SDKConsent controls

Talk to us