Early access preview
React Native quickstart
This guide takes a fresh React Native app from no Caliper to a live “how did you hear about us” survey that fires once after first open and writes the answer into Adjust as an install-level event. Plan on about ten minutes.
1. Install the package
npm install @caliper/react-native
The package ships native modules for both platforms, so install the iOS pods after adding it:
cd ios && pod install
On a bare React Native project this is required; on Expo, use a development build rather than the Go client, since Caliper includes native code. Caliper reads no IDFA or Google Advertising ID and does no fingerprinting — the answer is first-party by construction.
2. Configure at the app root
Configure Caliper once, as early as possible in your root component or entry file, before the first screen mounts.
import { Caliper } from '@caliper/react-native';
Caliper.configure({ apiKey: 'cal_live_…' });
Caliper.survey('how_did_you_hear')
.after('first_open')
.sync(['adjust', 'slack']);
Caliper.survey('how_did_you_hear') selects the question. .after('first_open') waits for the first launch on a clean install and schedules the survey for the next natural pause in the session. .sync(['adjust', 'slack']) names the destinations the answer is forwarded to. Initialize your Adjust React Native module in the same startup path so its event API is ready when an answer arrives.
3. Run it on a clean install
Uninstall the app from the simulator or device first — the survey fires once per install, keyed off first open, so reinstalling is the only way to see it again. Launch the app. After first open you will see one closed-option survey with answers in randomized order and a prominent Skip. A skipped survey is better than a guessed answer, so the skip is deliberately easy to reach.
4. Confirm it in Adjust
When someone answers, Caliper forwards the response as a custom in-app event through Adjust’s SDK-to-SDK event API, attached to that install. Open the app’s events in your Adjust dashboard. A how_did_you_hear event will appear carrying the chosen answer as a property — it shows up in dashboards and postbacks like any other in-app event, so you can break installs down by self-reported source alongside your network data.
Next steps
- Tune the question and answer set: Survey configuration
- Understand why the percentages hold up: Methodology
- See every event field and the Slack digest: MMP sync
- Full designed surface: API reference