306,619 unique users opened the Home screen in the last 30 days. Of those, only 11,220 completed a loyalty reward order — a 3.66% end-to-end conversion rate. Two transitions account for nearly all the loss.
Step 1 — funnel entry point
Step 2 — 27.4% conversion
Step 3 — 3.66% end-to-end
users dropped
users dropped
The largest absolute drop in the funnel. Session replay across 3 drop-off sessions reveals that users never navigate toward Rewards — not because they try and fail, but because the app is primarily used as a product-ordering tool and Rewards isn't discoverable from the Home flow.
BrowseCatalogView
→ Basket → checkout, completing product orders without ever navigating to the Rewards tab.
This is a discovery and information architecture problem, not a technical failure.
In every drop-off session reviewed, users opened the app, navigated directly to the catalog, placed product orders, and left — with zero navigation toward any Rewards surface. The loyalty section has no persistent CTA or points-balance widget on the Home screen to signal its existence. Users completing routine orders have no reason to explore further.
At session start, the app calls apim-na.mypepsico.com/cgf/b2b-bff-mx/v1/api/v1/products/v2 and the request fails. This surfaces a modal error — "¡Ups! Algo no salió como esperábamos" — at the very first screen, before the user can see any navigation. Users dismiss the modal and proceed directly to the catalog, bypassing Rewards entirely. An initial error state sets a task-completion mindset rather than an exploration one.
Multiple sessions show 3.1 Page Loader elements
spinning for extended periods — particularly on OrderDetail and
checkoutParent. Users stuck in loading states exit the
task-in-progress and don't explore further. Performance failure converts exploratory sessions into abandoned ones.
The steepest conversion wall in the funnel. Of 84,126 users who reach a Rewards page, only 13.3% complete a loyalty order. Session replay across 4 drop-off sessions reveals two concrete, repeatable blockers: an Empty Basket Warning that greets users on AllRewards, and checkout loading failures that prevent order submission.
The single most consistent friction signal across all Step 2→3 drop-off sessions: the Empty Basket Warning element appears the moment users land on AllRewards, RewardsTab, or any rewards surface. Users interpret this as an error or dead end — they check their Basket (also empty), return to AllRewards, and leave without redeeming anything. If rewards redemption requires items in the basket first, this requirement is never communicated. If it's a misfire, it's a critical UX bug.
What users experience on AllRewards
Empty Basket Warning appears immediately
Fires as soon as AllRewards screen loads — before any interaction. Appears on iOS and Android.
Users navigate to Basket — also empty
Confirming the warning is a real state, not a dismissible UI artifact. No path forward is offered.
Users return to AllRewards, then leave
Average 30–60 seconds of fruitless navigation before abandoning the rewards section entirely.
Users who do reach the checkout stage for a reward order encounter multiple consecutive
3.1 Page Loader
elements in checkoutParent
lasting up to 23 seconds. The pattern is: tap Place Order → loader spins → user taps back →
returns to Basket → tries again → same result. Users repeat this cycle 2–3 times before abandoning.
The checkout performance issue affects both product and loyalty order flows.
4 actions to move the 3.7% conversion rate
Two of the four recommendations are immediate bug/UX fixes with clear root causes visible in session replay. The other two are product and engineering investments that address structural discovery and performance problems.
Diagnose and fix the Empty Basket Warning on AllRewards
Determine whether this is a gating requirement (basket must have qualifying items to redeem rewards) or a misfired UI state. If it's a requirement, surface a clear explanation and a CTA to add qualifying products. If it's a bug, fix it. This single issue is responsible for the 86.7% Step 2→3 drop-off — it's the hardest wall in the funnel. Evidence: 4 of 4 Step 2→3 drop-off sessions reviewed showed this warning firing immediately on AllRewards entry. Relevant sessions: User 19001382, User 5523173.
Profile and fix checkoutParent load time — target <3s
The checkoutParent screen is loading for 15–23 seconds in recorded sessions, causing systematic abandonment across both product and loyalty order flows. This is not a loyalty-only problem — it's degrading the entire app's checkout funnel. Instrument the screen with performance tracing, identify the slow API call or render blocking, and set a sub-3 second target. Evidence: User 22119487 (23s load, 2 abandoned attempts).
Add a Rewards discovery surface on the Home screen
72.6% of users never navigate to Rewards — not because they can't, but because there's no prompt to do so. A persistent points-balance widget, a "Rewards available" banner, or a Home screen tile would give users a reason to explore. The loyalty program is invisible to users whose mental model of PepsiConnect is "ordering app." A small-surface A/B test — e.g. a loyalty points pill in the Home header — could validate impact without a large redesign.
Fix the Home screen API error on launch
The products/v2 API call fails on launch for a meaningful subset of users, surfacing an error modal as the very first thing they see. This sets a task-completion (not exploration) intent from the start and may suppress Home-screen reward discovery. Investigate whether this is a location-specific routing issue, a cold-start race condition, or a missing auth token on first load. Add graceful fallback handling so the error doesn't block the Home UI from rendering.