/ #Case Study #Rappi 

Rappi Case Study: Real-time customer analytics on Snowflake


Executive Summary

Latin America’s first and biggest Super App, Rappi relies on product analytics insights to understand what features and products their customers actually want from them. As their company grew, the third-party analytics tool they were using failed to meet their teams’ needs such as querying the data via SQL or combining the product data with other company data like marketing, business, finance, etc. So they realized the importance of building and owning a single source of truth for their data. In this case study, we’ll explain how they took a data warehouse-centric approach with rakam BI and rakam API.

About Rappi

With a $1.7B investment, Rappi is one of the most successful and fastest-growing Latin American startups. From on-demand food and grocery delivery to travel and e-commerce, Rappi offers a variety of services and products to their millions of customers on their mobile and web applications. Rappi was founded in 2015 in Colombia and today is present in 9 countries with its 7000+ employees worldwide.

Challenges of Their Old Stack

(Amplitude only)

Prior to using rakam, Amplitude was the main analytics tool the teams were using when they needed to draw a product or business insights at Rappi. Thanks to Amplitude’s powerful features like Funnel, Retention etc., product teams managed to increase conversion and retention rates drastically. The struggle with this tool is that Rappi didn’t own the data; the event data was collected via Amplitude’s SDKs from Rappi’s mobile and web applications into Amplitude’s AWS servers.

Since Rappi didn’t own the data, they were only able to query the data within Amplitude’s UI. This UI didn’t allow teams to run custom SQL queries or to connect data from external tools that Rappi was using; they needed to join the product data with other company data such as marketing, CRM for multi-dimensional analysis as they were growing fast and they had their company data in different mediums.

They realized that they could only explore and use their company data fully if only they started owning their data. To own their data, they decided to build the ETL pipelines to collect all their data inside a data warehouse and that’s about when we met.

How we helped

(rakam API + Presto,later Snowflake + rakam BI)

Rappi teams were looking for a real-time analytics tool to use along with Amplitude when Amplitude’s UI was not able to answer the questions about their data. They decided to keep Amplitude in their stack since it was already adopted and well-known by many teams at Rappi. They were looking for tools that could do what Amplitude can’t provide; a tool to collect and ingest their data inside a data warehouse they own and a tool to explore this data on top of their data warehouse.

When we met with the Rappi teams, we suggested the rakam API for collecting and ingesting event data because of its flexibility and ease in tracking and setting custom events and rakam BI for analyzing and visualizing this data because of its ability to connect to their data warehouse and its customizable analytical interfaces. They implemented rakam API and started ingesting the data inside their data warehouse which was Prestodb in the early days but later they switched to Snowflake. Rakam supports both of these data warehouses so the decision for switching was easy. Rappi uses Fivetran as an ELT tool to ingest their marketing and transactional data into their Snowflake cluster and use rakam API to collect their real-time customer event data into their Snowflake in less than 30 minutes delay.

When Rappi decided to collect all their customer event data into their data warehouse, they evaluated some solutions like Snowplow and Rakam API for this job. The main reason they chose rakam over other solutions was the flexibility and ease of implementation that rakam API offered for custom event schemas. Rakam automatically discovers new event types and properties on the fly without compromising the performance. Rappi has been tracking more than 1000+ unique events with an average of 30 event properties for each event type on Amplitude, thanks to the auto-discovery feature of rakam API, it took less than 1 week to migrate all these events to Rakam API. Additionally, Rakam helps the Rappi teams solve integration issues for the data collected from different mobile platforms such as iOS and Android and ensures data integrity.

Once they managed to get all their company data inside their Snowflake, it became the single source of truth for Rappi. Whenever they needed the most up-to-date and accurate data, they knew that Snowflake had that data. They were querying the data via SQL on Snowflake but soon later, they realized how seamless it’s to run ad-hoc analysis and visualize the data using rakam BI’s reporting features such as Segmentation, Funnel, Flow, and Retention. So teams started to use rakam BI’s on-premise version by connecting rakam BI to their Snowflake data warehouse.

The built-in reporting features that come with rakam BI:

Segmentation: A deep analysis of metrics and users by drilling, filtering and pivoting the data.

Funnel: A step-by-step analysis of user behavior that determines where and why they drop off or convert.

Flow: Visualizes the complete user journey in a Sankey chart to easily discover the common paths users take on your products.

Retention: A cohort-based analysis that shows what brings users back.

SQL: An SQL interface where you can build custom queries and reports using SQL.

Rappi recently launched an advertising platform for advertisers to promote their services and products to millions of customers using Rappi’s mobile applications every day. The team behind this new product is called RADs and they use Rakam API to ingest customer event data from their backend servers as well. They struggled to analyze and visualize this data in their both internal and external BI tools because the dataset was huge. As a solution, they decided to model their data with rakam’s modeling tool and create incremental roll-up tables to optimize their BI performance and reduce their query costs drastically.

“rakam helps us collect customer data in almost real-time into our Snowflake cluster in a hassle-free way. We collect raw event data from both our mobile platforms and backend services, create roll-up tables with rakam, and visualize the data in different BI tools without any maintenance overhead.”_
Pablo Dominguez, VP of Engineering at Rappi


  • Within a short period of using rakam’s products, Rappi’s data grew immensely and reached more than tens of billions of events monthly. Since their data was huge, it was slow and costly to analyze it in BI tools so they used rakam’s modeling tool to create roll-up tables to optimize the cost and speed of queries.
  • Technical teams build up custom reports on their raw event-based data with the flexibility of SQL and later visualize those reports on rakam or other BI tools.
  • Both non-technical and technical teams use rakam’s behavioral analytics features and dashboards to share reports with their stakeholders.
  • Today, thanks to the decision of owning their data, Rappi is able to use a variety of BI tools and product analytics tools when needed including Looker, rakam, Amplitude. Even though they switch from one tool to another, they don’t lose any data because all their data is stored inside their data warehouse now.

Here is Rappi’s case study explained by Snowflake in a webinar (It’s only available in Spanish):


Burak Emre Kabakci