Respectlytics Respect lytics
Menu
Replace Singular Open-source SDK + server

Replace Singular with an open-source analytics stack

Migrate from Singular to open-source Respectlytics. MIT SDK, AGPL-3.0 server. Helps developers avoid collecting personal data.

Example Singular call (the "before")

kotlin Respectlytics
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)
})

Closed-source analytics SDKs require you to trust vendor claims about behaviour. Open-source SDKs let your security team verify those claims from source. For regulated industries this is often a procurement-gating requirement. Respectlytics's SDKs are MIT-licensed and fully open; the server is AGPL-3.0.

Remove Singular cleanly

  1. 1

    Remove the Singular SDK from your build (Singular-SDK / singular_sdk / singular-react-native)

  2. 2

    Remove Singular.start(YOUR_API_KEY, YOUR_API_SECRET) and Singular.event(...) call sites

  3. 3

    Decide ATT posture — remove NSUserTrackingUsageDescription if Singular was the only ATT-triggering SDK

  4. 4

    Remove the AD_ID permission from the Android merged manifest if no remaining SDK contributes it

  5. 5

    Plan SKAdNetwork + Google Play Install Referrer as the first-party attribution replacement

Singular vs Respectlytics — open-source sdk + server

SingularRespectlytics
SDK source publicly available— see tool note aboveYes (MIT)
Server source publicly available— typically noYes (AGPL-3.0)
Reproducible builds from source— variesYes (CI publishes from same commit)
Fork-and-modify allowed— varies by licenseYes
Public commit history— typically noYes (GitHub)

Frequently asked questions

Where can we audit the source?

GitHub: github.com/respectlytics. Each SDK has its own repository with source, tests, CI configuration, and release tags. The server lives in a separate repo with the same conventions.

Are the published binaries reproducible from source?

Yes — CI builds use deterministic build commands. The artifacts published to CocoaPods / SPM / Maven Central / npm / pub.dev are produced by the same pipeline that runs against each commit. Reproducible builds are a goal we test against; report any discrepancy as an issue.

Can we modify the SDK and ship our fork?

Yes — MIT permits modification and redistribution with attribution. Many enterprises fork to adjust logging, add internal tracing, or vendor the SDK into their build.

Why MIT for SDK and AGPL for server?

Standard split for source-available SaaS (GitLab, Sentry, MinIO, Plausible). MIT on the SDK maximises consumer freedom — your app picks up the dependency without obligation. AGPL on the server prevents competing closed-source SaaS forks while allowing internal self-hosting freely.

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.