Respectlytics Respect lytics
Menu
Replace Segment (Twilio) No ATT prompt

Replace Segment (Twilio) to remove the ATT prompt

Migrate from Segment (Twilio) to Respectlytics so your iOS app doesn't need to show the ATT prompt. Helps developers avoid collecting personal data.

Example Segment (Twilio) call (the "before")

kotlin Respectlytics
import com.segment.analytics.kotlin.android.Analytics

val analytics = Analytics("YOUR_WRITE_KEY", context) {
    collectDeviceId = true
    flushAt = 20
}

analytics.identify(userId, traitsOf("email" to email, "plan" to "pro"))
analytics.track("Paywall Purchase", buildJsonObject {
    put("value", price)
    put("currency", "USD")
})

Apple's App Tracking Transparency dialog is a measurable conversion-rate killer — denial rates of 50-80% are typical, and the wording is mostly outside your control. If an SDK in your app reads IDFA, ATT is required by Apple's App Review. Removing the SDK that needs it is the cleanest way to also remove the prompt.

Remove Segment (Twilio) cleanly

  1. 1

    Remove the Segment Analytics SDK from your build (Analytics-Swift / analytics-android / @segment/analytics-react-native / segment_analytics_flutter)

  2. 2

    Remove Analytics.client(writeKey: ...) and analytics.track(...) call sites — replace with Respectlytics.track("event_name")

  3. 3

    Critically: review your Segment destinations and decide which destinations you still need data flowing to from Respectlytics (most don't — that's the point)

  4. 4

    Delete the Segment workspace's mobile source once events have stopped flowing

  5. 5

    Audit and remove the downstream destination SDKs that Segment was the only reason to forward to (e.g., Facebook Pixel, Google Ads)

Segment (Twilio) vs Respectlytics — no att prompt

Segment (Twilio)Respectlytics
Triggers ATT prompt on iOS— see tool note aboveNo (SDK never calls ATTrackingManager)
Reads IDFA— see tool note aboveNo
Requires NSUserTrackingUsageDescription in Info.plistYes (when reading IDFA)No
App Store Privacy Label: Identifiers tierTriggeredNot triggered by Respectlytics
Effect of users denying ATTReduced data qualityNo effect (no IDFA path)

Frequently asked questions

If we remove the ATT prompt, won't App Store Review reject our app?

No. Apple only requires ATT when an app or its SDKs actually track users across other apps or websites. If you remove the SDK that does that tracking, you should also remove NSUserTrackingUsageDescription from your Info.plist — keeping the key when no code calls ATTrackingManager.requestTrackingAuthorization is itself a flag Apple's review notes.

How do we still attribute installs to ad campaigns without IDFA?

Use Apple SKAdNetwork (and the newer AdAttributionKit on iOS 17.4+). Both are first-party Apple frameworks designed exactly for this — no IDFA, no ATT prompt, deterministic install attribution within Apple's privacy boundary. Your ads platform (Apple Search Ads / Google Ads / Meta) supports them directly.

Does Respectlytics still work if some users have ATT denied in other apps?

Yes — Respectlytics doesn't read IDFA at all, so the ATT state is irrelevant to it. Your Respectlytics data quality is the same for users who denied ATT in other apps as for users who allowed it.

What about the conversion-rate hit from showing ATT?

That goes away when you remove the prompt. Anecdotally teams report a measurable engagement lift on first-session retention after removing ATT prompts that were shipped purely for analytics rather than for ad attribution.

Related migration guides

Track what matters. Collect nothing you don't.

Five-field event schema, RAM-only event queue, no IDFA, no AAID, no persistent user IDs. Helps developers avoid collecting personal data in the first place.