G2 32 x 32 White Circle

4.7 STARS ON G2

Try our product analytics for free. No card required.

UPDATED

7 MIN READ

SHARE THIS POST

React Native IAP: Track and Improve In-App Purchases (2026)

BY Tope Longe
SHARE THIS POST
react native IAP

React Native in-app purchases (IAP) let users buy subscriptions, premium features or consumables inside your app. Payments go through Apple's App Store and Google Play billing. You add them with a library such as react-native-iap or RevenueCat's react-native-purchases. Then track each step of the purchase flow as an event, so you can see where users drop out and why.

Purchase stepEvent to logWhat to watch
Paywall or store screen viewedpaywall_viewedHow many users see your offer
Product selectedproduct_selected, with product_id and priceWhich products attract interest
Purchase startedpurchase_startedDrop-off before the store payment sheet
Purchase completedpurchase_completed, with revenue and currencyConversion rate per product and platform
Purchase failed or cancelledpurchase_failed, with the error codePayment errors and cancellations
Purchases restoredpurchase_restoredUsers who reinstall or switch devices

Adding in-app purchases is the easy part. Making them convert is harder: you have to balance user experience, pricing and timing without getting in the way of the app itself. Get it wrong and users leave the paywall, or the app.

This guide covers the types of in-app purchases and how to set them up in React Native. It then shows how to track and analyze the purchase flow with UXCam, and how to use what you find to improve conversions.

What are in-app purchases?

In-app purchases are payments users make inside an app, and they're one of the main ways mobile apps earn money. Users buy extra content, features or services without leaving the app.

You'll find them almost everywhere. Games sell virtual goods and power-ups, productivity apps sell premium features, and news and streaming apps sell subscriptions.

Types of in-app purchases

There are three types of in-app purchases, and the right mix depends on what your app sells:

  1. Consumables: One-time items that are used up, such as in-game currency or a temporary boost. They suit games and apps where users benefit from quick extras.

  2. Non-consumables: Purchases users keep for good, such as unlocking a premium feature or a special character.

  3. Subscriptions: Ongoing access to content or features for a recurring fee. They give you steady income, as long as users keep getting value. News apps, streaming services and apps with premium tiers use them.

Knowing these types helps you decide which ones fit your app's goals and your users' needs.

Set up in-app purchases in React Native (Android and iOS)

Setting up in-app purchases in React Native takes a library, your products in both stores and a few event handlers:

  1. Install a library: Add a library such as react-native-iap or RevenueCat's react-native-purchases. Both wrap the native purchase APIs for Android and iOS.

  2. Configure your products: Create your in-app products in the Google Play Console and App Store Connect, with their details, prices and any subscription options.

  3. Initialize the library: Import it in your React Native code and initialize it with the configuration it needs, such as API keys or app user IDs.

  4. Fetch available products: Load each product's title, description and price from the store through the library.

  5. Show products and start purchases: Build the screen that lists your products. When a user picks one, call the library's purchase function to open the store's payment sheet.

  6. Handle purchase events: Handle successful purchases, failed transactions and subscription renewals with the events your library provides.

Each library's documentation walks through the full setup, including receipt validation and testing.

How to analyze in-app purchase flows

Once purchases work, the next question is why users buy, or don't. Analyzing the purchase flow takes five steps:

  1. Choose the right product analytics tool

  2. Collect data automatically

  3. Track in-app purchase events

  4. Analyze conversion funnels

  5. Use qualitative insights

Together, they show your users' purchasing patterns, where the flow loses them and how to raise your conversion rate.

1. Choose the right product analytics tool

Pick a product analytics tool that engineers, designers and product managers can all use. Inspire Fitness is a good example. Its React Native app offers live and on-demand workout classes for training at home.

As the app grew, the product team wanted to decide what content to push out next, and their existing analytics couldn't answer that. With UXCam's React Native SDK, they set up and tracked the relevant app events in about two hours. Event analytics then showed which workouts and instructors drive the most engagement. That's the same question an in-app purchase strategy starts with: which content is worth putting in front of users next.

The case study reports a 181% increase in new user sign-ups and a 460% increase in time spent in the app, both over three months. Total app sessions grew 415%. Total app crashes fell 40% over one month, and rage taps dropped 56%.

Inspire Fitness Testimonial

UXCam gives you a detailed view of how users interact with your app. Its lightweight SDK takes a few lines of code to add to a React Native project, plus a tag for each screen. From then on, every session and gesture is recorded, so you have the data before you know which questions to ask.

2. Collect data automatically

UXCam's autocapture means you don't have to tag every interaction before you can analyze it. For in-app purchases, that helps in four ways:

  • Every gesture is recorded: Taps, swipes and other interactions are captured automatically, so you don't miss the moment a user hesitates on your paywall.

  • You can look back: Smart events let you define an event from data you've already captured and analyze past behavior with it.

  • Less manual tracking: Your team spends less time instrumenting events and more time acting on them.

  • New questions, no new release: When a new question comes up, you can often answer it from the data you already have.

UXCam Autocapture

3. Track in-app purchase events

Track each step of the purchase flow as its own event, so you can see where users drop out. Log them with RNUxcam.logEvent() and add properties such as product ID, price and currency. Each event can carry up to 20 properties. These are the events to start with:

  • Paywall or store viewed (paywall_viewed): How many users see your offer.

  • Product selected (product_selected): Which products attract interest. Add the product ID and price.

  • Purchase started (purchase_started): How many users open the store's payment sheet.

  • Purchase completed (purchase_completed): Your conversions. Add revenue and currency.

  • Purchase failed or cancelled (purchase_failed): Payment errors and cancellations. Add the error code.

  • Purchases restored (purchase_restored): Users who reinstall or switch devices.

UXCam Events

4. Analyze conversion funnels

A funnel from paywall to completed purchase shows the step where you lose the most users. In UXCam, you build it from the events above and see the drop-off between each step.

New UXCam Funnels

The funnel tells you where users drop off. To find out why, UXCam lets you:

  • Analyze interactions: Look at what users do at each step of the funnel before they leave.

  • Spot technical issues: Find crashes, UI freezes and other bugs that stop users from completing a purchase.

  • Simplify the flow: Remove or rework the steps that confuse users or slow them down.

5. Use qualitative insights

Numbers show where the purchase flow breaks. Session replays and heatmaps show what users actually experienced there.

Session recordings to understand pain points

  • Watch user sessions: Watch real users move through your purchase flow. Notice where they pause, hesitate or give up, because those moments point to the problems worth fixing.

  • Look for rage taps, UI issues and confusing flows: Rage taps, repeated taps on something that doesn't respond, are a clear sign of frustration. So is a step where many users struggle in the same way. Both usually point to a UI issue or a flow you can simplify.

Sessions replay UXCam

Heatmaps for UI analysis

  • See where users look and tap: Heatmaps show where users focus on your purchase screens. Use them when redesigning your app's layout, so key elements such as the buy button or a promotional offer get noticed.

  • Improve UI elements and layouts: If users ignore an important button, try changing its size, color or placement. Small changes like these can make a big difference to your purchase flow.

Click heat map examples

How to improve React Native in-app purchase conversions

Improving conversions comes down to testing changes, measuring them and tailoring the flow to different users.

Run A/B tests on different purchase flows

Test one version of your purchase flow against another to see which converts better. With your A/B testing tool, try different button copy, product page layouts or numbers of steps. The results show you which approach works, instead of leaving it to opinion.

Measure impact on conversion rates

After you ship a change, watch what it does to your conversion rate. UXCam lets you compare funnel performance before and after the change, so you know whether it actually helped.

Average time to conversion in highlights bar.

Analyze behavior across user segments

Different users buy for different reasons. Segment users by behavior, platform, demographics or purchase history, and compare how each group moves through the purchase flow. You'll often find that one segment struggles where others don't.

User Segments New UI

Personalize purchase experiences

Use what you learn from each segment to tailor the purchase experience. That can mean recommending different products, changing the offer or adjusting the message for each group.

Iterate regularly

Keep experimenting with your purchase flows, offers and price points as the data comes in. Small, regular changes usually beat one big redesign.

Visualize your KPIs

A dashboard keeps your purchase metrics in one place. UXCam's dashboards let you track conversion rates and purchase events at a glance, across each of your in-app purchase funnels.

UXCam Dashboard New UI

Where should you start with in-app purchase analytics?

Start with the funnel. Track each step from paywall to completed purchase, find the step that loses the most users, and watch the sessions behind it. That usually shows you the first thing to fix.

UXCam brings these pieces together for React Native: autocapture, event analytics for React Native apps, funnels, session replays and heatmaps. Try UXCam for free and see your own purchase flow. You can also book a demo to see how UXCam fits your app.

FAQ

How do I add in-app purchases to a React Native app?

Install a library such as react-native-iap or RevenueCat's react-native-purchases. Create your products in App Store Connect and the Google Play Console, then fetch them in the app and start purchases through the library. Handle success, failure and restore events, and validate receipts before you grant access.

What types of in-app purchases are there?

There are three main types. Consumables are used up, like in-game currency. Non-consumables are bought once and kept, like a premium upgrade. Subscriptions give ongoing access for a recurring fee. Apple and Google both support all three through their billing systems.

Which in-app purchase events should I track?

Track every step of the funnel: paywall viewed, product selected, purchase started, purchase completed, purchase failed and purchases restored. Add properties such as product ID, price, currency and error code. That lets you see where users drop out and which products convert.

How can analytics improve in-app purchase conversion?

Build a funnel from paywall to completed purchase and find the step with the biggest drop. Watch session replays of users who left at that step to see why. Compare segments such as platform or plan, then test changes to price, layout or copy.

How do I test in-app purchases in React Native?

On iOS, use sandbox testers in App Store Connect or StoreKit testing in Xcode. On Android, add license testers and publish the app to an internal testing track in the Google Play Console. Test successful, failed, cancelled and restored purchases on both platforms.

You might also be interested in these;

React Native Session Replay with UXCam: Setup Guide

React Native Mobile App Analytics Tool: UXCam

React Native Performance Monitoring Guide

A Practical Guide to Heatmaps in React Native Apps

How to Optimize Flutter In-App Purchase with Analytics

NET MAUI mobile app analytics tool - Transitioning from Xamarin

AUTHOR

Tope Longe

Product Analytics Expert

Ardent technophile exploring the world of mobile app product management at UXCam.

Tope Longe
UPDATED

Related articles

Conversion Analysis

Conversion Funnel Analysis: A Complete Guide for 2026

Conversion funnel analysis is how product teams find where users drop off in critical flows like signup, checkout, and activation, and fix the specific...

Dr. Silvanus Alt
Silvanus Alt, PhD

Founder & CEO | UXCam

Conversion Analysis

What Is Mobile App Analytics? Definition, Metrics & Best Practices

Mobile app analytics takes the guesswork out of understanding how users interact with your app. Learn what mobile app analytics is, why it's important, and how it differs from web...

Jonas Kurzweg
Jonas Kurzweg

Product Analytics Expert

Conversion Analysis

Top 52 Mobile App KPIs: The Complete List for 2026

The 52 mobile app KPIs worth knowing in 2026, organized by category, with the 10 that actually matter for most product teams...

Dr. Silvanus Alt
Silvanus Alt, PhD

Founder & CEO | UXCam

What’s UXCam?

Autocapture Analytics icon
Autocapture Analytics
With autocapture and instant reports, you focus on insights instead of wasting time on setup.
Customizable Dashboards
Customizable Dashboards
Create easy-to-understand dashboards to track all your KPIs. Make decisions with confidence.
icon new revenue streams (16)
Session Replay & Heatmaps
Replay videos of users using your app and analyze their behavior with heatmaps.
icon new revenue streams (17)
Funnel Analytics
Optimize conversions across the entire customer journey.
icon new revenue streams (18)
Retention Analytics
Learn from users who love your app and detect churn patterns early on.
icon new revenue streams (19)
User Journey Analytics
Boost conversion and engagement with user journey flows.

Start Analyzing Smarter

Discover why teams across 50+ countries rely on UXCam. Try it free for 14 days, no credit card required.

Trusted by the largest brands worldwide
naviclassplushousingjulobigbasket