Context-specific experiments allow you to track metrics exclusively for purchases made within a specific context. This is useful when you want to measure the impact of a particular screen or flow on conversion rates.When enabled, only purchases that include the experiment’s context key will be counted toward the experiment’s metrics. This gives you more accurate data about how a specific paywall or offer performs.To use context-specific experiments:
Set a Context key when creating the experiment
Enable the Context-specific toggle
Pass the context key when making purchases in your app
Use the following code snippets to pass context keys when making a purchase:
Swift
Copy
let purchaseOptions = Qonversion.PurchaseOptions(contextKeys: ["mainOnboarding"])Qonversion.shared().purchaseProduct(product, options: purchaseOptions) { (entitlements, error, isCancelled) in // handle result here}
final QPurchaseOptions purchaseOptions = new QPurchaseOptions.Builder() .setContextKeys(Arrays.asList("mainOnboarding")) .build();Qonversion.getSharedInstance().purchase( this, product, purchaseOptions, new QonversionEntitlementsCallback() { @Override public void onSuccess(@NotNull Map<String, QEntitlement> entitlements) { // handle result here } @Override public void onError(@NotNull QonversionError error) { // Handle error here } });
Kotlin
Copy
val purchaseOptions = QPurchaseOptions.Builder() .setContextKeys(listOf("mainOnboarding")) .build()Qonversion.shared.purchase( this, product, purchaseOptions, callback = object : QonversionEntitlementsCallback { override fun onSuccess(entitlements: Map<String, QEntitlement>) { // handle result here } override fun onError(error: QonversionError) { // handle error here } })