▸Example Singular call (the "before")
import com.singular.sdk.Singular
import com.singular.sdk.SingularConfig
val config = SingularConfig("YOUR_API_KEY", "YOUR_API_SECRET")
config.withIMEICollection()
Singular.init(applicationContext, config)
Singular.event("sng_purchase", JSONObject().apply {
put("revenue", price)
put("currency", "USD")
put("user_id", userId)
})
App-binary size affects download conversion (especially on lower-end devices and cellular networks) and storage pressure for users with full phones. Heavy analytics SDKs (Firebase Analytics, AppsFlyer, Branch) routinely add several MB to the binary; Respectlytics's per-platform SDK is under 100 KB.
☑Remove Singular cleanly
-
1
Remove the Singular SDK from your build (
Singular-SDK/singular_sdk/singular-react-native) -
2
Remove
Singular.start(YOUR_API_KEY, YOUR_API_SECRET)andSingular.event(...)call sites -
3
Decide ATT posture — remove
NSUserTrackingUsageDescriptionif Singular was the only ATT-triggering SDK -
4
Remove the AD_ID permission from the Android merged manifest if no remaining SDK contributes it
-
5
Plan SKAdNetwork + Google Play Install Referrer as the first-party attribution replacement
⇋Singular vs Respectlytics — smaller app binary
| Singular | Respectlytics | |
|---|---|---|
| Typical contribution to IPA size | — see tool note above | < 100 KB |
| Typical contribution to APK / AAB size | — see tool note above | < 100 KB |
| Transitive dependencies | — see tool note above | None (zero third-party) |
❓Frequently asked questions
How much do these SDKs typically add to my binary?
Varies by SDK. Rough order of magnitude on Android (release AAB): Firebase Analytics ~3-4 MB (with transitive Google Play Services), AppsFlyer ~1-2 MB, Branch ~1.5 MB, Mixpanel ~1 MB. Our [SDK Bundle-Size Comparator](/tools/sdk-bundle-size-comparator/) has up-to-date numbers per SDK.
Does binary size actually affect downloads?
Yes — particularly past Apple's 200 MB cellular-download cap and on lower-end Android devices with limited storage. Google's Play Console has internal metrics showing measurable install-rate differences when AAB size crosses common thresholds (50 MB, 100 MB).
How does the size reduction work in practice?
Removing a single ~3 MB SDK from your release build shrinks the binary by roughly that amount. Multiplied by user installs, the cellular-data savings compound. iOS App Thinning handles per-device variants; Android AAB delivers size-optimised installs by ABI / density / language.
Does the smaller SDK come at a feature cost?
Respectlytics intentionally doesn't bundle features it considers separate concerns: no ads, no attribution, no in-app messaging, no A/B testing, no crash reporting. Each of those is a dedicated tool's job. The smaller surface is the deliberate design — you add only what you actually use.