Food rescue marketplace
Industry
Clearing time-limited inventory · order-state messaging
Use case
Push · In-app · Email
Channels
December 2024
On Pushwoosh since

About Cheaf

Cheaf consumer app screens: browse stores with available surplus packs, pick up a pack in store, reserve a fruit and vegetable mix

Cheaf is a food rescue marketplace in Latin America. Restaurants, bakeries and grocery stores list surplus food as discounted surprise packs. Shoppers reserve a pack in the app, collect it in store, and pay a fraction of the original price.

Cheaf started in Mexico and now runs in Mexico, Chile, Colombia and Argentina. Colombia opened a few months ago and is still in its launch phase. The consumer app has a 4.88 rating on the App Store and more than 5 million installs on Android. Merchants get their own partner app and a web dashboard, where they upload the day’s stock and see what sold.

The model puts marketing on a clock. A surplus pack is worth something at 4pm and nothing at 9pm. The business runs on sell-through, and Cheaf tracks it per store and per day, sometimes per hour. If a location still has unsold packs at midday, someone has to reach the right shoppers before it closes.

4 country teams do that work. Each one decides what its own market needs.

Every team decides. It depends on the moment of the market, on the number of stores, on the market conditions.

Brenda Cárdenas
Brenda Cárdenas
Marketing Manager at Cheaf

The challenge: selling today’s stock before today ends

2 things make this hard.

The first is timing. Every pack is 1 unit of perishable stock, and the window to collect it is a few hours long. A campaign that goes out late sells nothing. One that goes to the wrong city sells nothing and pings people who can’t use it.

The second is granularity. The decision is rarely “message Mexico”. It’s closer to “these 4 stores in this neighbourhood still have packs at 3pm, and the shoppers who can get there in 20 minutes should know”. Multiply that by 4 countries and a partner network that grows every month, and the sheer number of small decisions becomes the real limit.

Before Pushwoosh, those decisions went through engineering. Cheaf had journeys, but marketing couldn’t launch one without a developer, so every campaign meant a hand-off and a wait. With stock that expires the same day, that wait hurt most.

Email ran on a separate platform, so audience data sat in one system and messaging in another.

The solution: campaigns timed to sell-through

Cheaf moved push, in-app and email to Pushwoosh and rebuilt its campaign process in Customer Journey Builder.

The Cheaf backend sends the events that messaging depends on:

  • registration, with the user’s country
  • pack reservation, with the store, the brand and the order status
  • merchant-side events for partner reporting and satisfaction

Most sends start with a reachability check. The team picked up the habit during onboarding, while working out what each channel costs per user reached, and kept it as volume grew.

Journey 1: daily sell-through pushes, per market, per daypart

Most of the daily work happens here. Each country team watches sell-through during the day, picks the audience that can still act on what’s left, and sends.

Chile runs lunch, afternoon and evening slots. Mexico sends in numbered batches to different audience slices across the day. Colombia builds around named partner locations. Argentina pairs low-sell-rate pushes with first-rescue flows for new users, one per province.

Depending on the hour and on our sales rate, we select an audience and then we send the messages to try to sell in these stores that still have a lot of boxes.

Brenda Cárdenas
Brenda Cárdenas
Marketing Manager at Cheaf

Most journeys Cheaf has launched include an A/B splitter. Subject lines, creative and timing get tested on a live audience every day instead of waiting for an occasional big experiment. At 60 campaigns a week, that’s a lot of tests.

Cheaf Mexico batch journey in Pushwoosh: push reachability check, 10/90 split with a control group, sell-through push and order tracking

Mexico: several sends a day. Each send is a separate journey to Users MX, the segment of all users in Mexico.

  1. Push-enabled users only.
  2. 10% control group, no push.
Cheaf Chile lunch-slot journey in Pushwoosh: audience entry, a lunchtime push and a 2-hour wait for a booked order

Chile: lunch slot. Separate pushes for lunch, afternoon and evening.

  1. Lunch-slot audience.
  2. 2 hours to book an order.
Cheaf Colombia partner-store journey in Pushwoosh: Jumbo Artesa audience, reachability check, 10/90 split and a 12pm push

Colombia: named partner locations. Here, Jumbo Artesa at 12pm.

  1. Shoppers of this store.
  2. 10% control group, no push.
Cheaf Argentina new-user onboarding in Pushwoosh, part 1: new users in Buenos Aires, a 10% control group, Email 1 and Push 1 for push-reachable users

Argentina: new-user onboarding (1/4). Emails and pushes until the first order, or “rescue”.

  1. 10% control group, no messages.
  2. Ordered? The user leaves the flow.
  3. No push? Skip to the next wait.
Cheaf Argentina new-user onboarding in Pushwoosh, part 2: Push 2 for push-reachable users and Email 2 for everyone who hasn't ordered yet

Argentina: new-user onboarding (2/4). Push 2, then Email 2.

  1. Email goes to everyone who hasn’t ordered yet.
Cheaf Argentina new-user onboarding in Pushwoosh, part 3: Push 3 with an email fallback for users without push, then Push 4

Argentina: new-user onboarding (3/4).

  1. No push? Email 3 instead.
  2. Push 4 extends the offer.
Cheaf Argentina new-user onboarding in Pushwoosh, part 4: a farewell push, a 1-day wait and a VUELTA25 code push

Argentina: new-user onboarding (4/4).

  1. Farewell push.
  2. Ordered after it? A VUELTA25 code.

Journey 2: messaging that follows the order

These journeys start from where a shopper is in an order.

When a shopper books an order, Cheaf sends an in-app message tied to that store or brand. Finding the pickup point in a large supermarket isn’t obvious, and several partner locations have their own pickup rules, so the message tells the shopper exactly where to go in that store.

When the Jumbo Costanera Center store in Santiago moved its collection point, the in-app went only to shoppers with an order there. Nobody else saw it.

Cheaf Chile journey in Pushwoosh: an order booked at Jumbo Costanera Center triggers a pickup-point in-app

Trigger: an order booked at Jumbo Costanera Center. Only these shoppers get the in-app.

Cheaf in-app message: pickup point moved to Customer Service at Jumbo Costanera Center

The in-app: “Heads up! From today, pick up your rescues at Customer Service.”

Pushwoosh in-app statistics for the Cheaf pickup-point message: unique impressions and interactions by platform

Statistics: unique impressions and interactions, iOS and Android.

Other journeys here cover a new shopper’s first days with the app, which is when they decide whether to come back. A first rescue order triggers a rating prompt, gated on the lifecycle attribute that marks it as a first purchase. When a new user books an order, a reminder to collect it goes out the same day. And a minute after sign-up, an in-app explains that stock arrives in the morning. Without it, a new user could open the app to an empty screen with no idea why.

Cheaf Argentina journey in Pushwoosh: a new user signs up, waits 1 minute and gets an in-app about when stock loads
Cheaf in-app message: rescues are loaded from 8:00 to 19:00, it's not an error

1 minute after sign-up: “It’s not an error. Rescues are loaded from 8:00 to 19:00.”

Cheaf Argentina journey in Pushwoosh: a new user's booked order triggers a same-day pickup reminder in-app
Cheaf in-app message: your rescue is waiting, pick it up today

Same-day reminder after a new user books an order: “Your rescue is waiting! You have to pick it up today.”

Journey 3: cross-sell across the partner network

Cheaf’s largest consumer journey links the partner network to Cheaf’s own retail line. It has 46 trigger entries, one per partner location. Each one listens for an order at its store, and all of them lead to the same in-app offer. Re-entry is on, so a shopper qualifies again with every purchase.

If one user does an order in one store, we tell them there are five stores near the one you’re going to pick up from, so maybe you can order in these too.

Brenda Cárdenas
Brenda Cárdenas
Marketing Manager at Cheaf
Cheaf Mexico cross-sell journey in Pushwoosh: 46 store-level order triggers lead to one Tienda Cheaf in-app offer, followed by a wait for a Tienda Cheaf order

46 store triggers, 1 in-app.

Cheaf in-app message: stop by Tienda Cheaf Mercado Roma, it's close to your rescue pickup

The in-app: “Stop by Tienda Cheaf for a rescue! It’s close to your pickup. Stock up your pantry at Tienda Cheaf Mercado Roma.”

The merchant side

Cheaf is a two-sided marketplace, and the partner side runs on the same account.

A set of always-on journeys is built for merchants, not shoppers: partner self-onboarding, terms and conditions signing, listing changes, invoicing, quality reports per store and per division, and support satisfaction surveys.

Cheaf partner journey in Pushwoosh: a terms-to-sign event triggers the T&C signing email

T&C signing: when a partner has new terms to sign, the backend sends an event and the email goes out.

Cheaf partner email asking a store to review and digitally sign updated commercial terms

The email: “We’ve updated our commercial terms for your store. Please review and sign.” Contact and store names come from the event.

Cheaf partner journey in Pushwoosh: a resolved support ticket triggers the CSAT survey email

Support survey: a resolved support ticket triggers the satisfaction email.

Cheaf CSAT email asking partners to rate the support they received

The email: “How satisfied are you with the support you received?”

Each template is built once and branched with Liquid. 1 quality-report email picks its subject line from an attribute, so the same journey node sends a per-store report, a per-division report or a finance report. Each function has its own sender address, so replies reach the right team.

Cheaf invoice journey in Pushwoosh: store and division reports go to one email node, all other invoices get the finance email

Invoice generated: store and division reports share 1 email node, everything else gets the finance email.

Cheaf billing email for a partner store with the store name and billing period filled from event attributes

The email: the store name and billing period are filled in from event attributes.

Results

  • 1.7 million push notifications per day, 60 campaigns a week across 4 markets
  • 92.2% email delivery and a 25.5% open rate on delivered mail
  • 4 country teams work independently on 1 account, each with its own strategy and cadence
  • Marketers launch campaigns themselves; engineering owns the backend events, not individual sends
  • A typical campaign goes from creation to launch in about 10 minutes

Why Pushwoosh

  • All channels in one place.
    Push carries the daily volume, in-app handles order updates inside the app, and email covers campaigns, promo codes and everything on the merchant side. The same audience definition works across all 3.

It has everything we were looking for in terms of communication. All the channels in one, email, push notifications, in-apps. And it’s very personalized in general, you can personalize everything.

Brenda Cárdenas
Brenda Cárdenas
Marketing Manager at Cheaf
  • An interface marketers can work in.
    It was the deciding factor when Cheaf compared platforms in 2024. It’s also why 4 teams can run their own markets without lining up behind 1 central team.
  • Event-driven journeys keyed to business state.
    Store, brand, order status and lifecycle stage arrive as event attributes and decide who gets a message. The pickup note for one supermarket and the cross-sell across 46 partner locations run on the same mechanic.
  • Templates that branch instead of multiplying.
    With Liquid conditions on event attributes, 1 journey node covers up to 7 transactional emails. The merchant side can keep growing without the template count growing with it.
  • Support that stays close.

We all agree that Pushwoosh has been a very useful tool, so thank you too for always supporting us when we have doubts.

Brenda Cárdenas
Brenda Cárdenas
Marketing Manager at Cheaf
See Pushwoosh in action
Request a demo

Pushwoosh Team
Content Team at Pushwoosh
Share

Related articles

View all