Respectlytics Respect lytics
Sign In Start Free Trial
Menu
Replace Flurry 5-field event schema

Replace Flurry with a strict 5-field event schema

Migrate from Flurry to a 5-field event schema. Extras rejected at the API. Helps developers avoid collecting personal data in the first place.

β–ΈExample Flurry call (the "before")

swift Respectlytics
import Flurry_iOS_SDK
let builder = FlurrySessionBuilder.init()
 .withAppVersion("1.0")
 .withLogLevel(FlurryLogLevelAll)
 .withCrashReporting(true)
Flurry.startSession(apiKey: "YOUR_FLURRY_KEY", sessionBuilder: builder)
Flurry.log(eventName: "Purchase", parameters: [
 "user_id": userId,
 "value": String(price),
 "currency": "USD",
])

Most analytics SDKs accept dozens of custom parameters per event. Respectlytics's API stores exactly five fields per event: event_name, session_id (rotated every two hours), timestamp, platform, and country. Extra fields are rejected with a 400. The discipline is structural β€” engineers can't accidentally add PII over time because the API refuses it.

β˜‘Remove Flurry cleanly

  1. 1

    Remove pod 'Flurry-iOS-SDK/FlurrySDK' from Podfile

  2. 2

    Remove implementation 'com.flurry.android:analytics:...' from build.gradle

  3. 3

    Remove react-native-flurry-analytics from package.json if used

  4. 4

    Remove Flurry.builder().build(...) initialisation and Flurry.logEvent(...) call sites

  5. 5

    If you used Flurry's Configuration Provider for remote config, plan a separate migration (e.g., Firebase Remote Config, GrowthBook)

  6. 6

    Delete the Flurry app entry once events stop flowing (the dashboard may already be sunset by the time you migrate)

⇋Flurry vs Respectlytics β€” 5-field event schema

FlurryRespectlytics
Stored fields per eventβ€” see tool note above (typically dozens of params)Exactly 5
API enforcement of schemaLenient (extras stored)Strict (extras rejected with 400)
Per-user state computableYes (people profiles, user properties)No (use account system)
Custom event properties accepted25–250 depending on tool0

❓Frequently asked questions

How do we segment events without custom properties?

By using distinct event names. Instead of track('purchase', { product: 'gold_pack' }), fire track('purchase_gold_pack'). The aggregation buckets event names automatically; no manual configuration. Keep your taxonomy short (under ~50 distinct names per matrix axis) to stay navigable.

We need per-event price for revenue reporting β€” how does that work?

It doesn't β€” and that's the point. Authoritative revenue lives in your billing system (Stripe, RevenueCat, App Store Connect) with refund-aware totals and currency-conversion handling. Mirroring revenue into product analytics produces two truths that drift over time.

What if we genuinely need a sixth field for legitimate reasons?

Three options: (a) encode the variant into the event name (e.g., paywall_purchase_pro vs paywall_purchase_basic); (b) keep per-user state in your account system and don't mirror it; (c) use a different tool for the specific use case. Most product teams find (a) or (b) sufficient.

How does the API actually enforce this?

JSON validation at the API gateway. A POST /api/v1/events/ with any field outside the 5 allowed keys returns HTTP 400 Bad Request with a body listing the rejected field names. Your integration test catches the regression on the first commit that adds an extra field.

β‡’Related migration guides

Replace Flurry: no att prompt Same tool, No ATT prompt Replace Flurry: no pii collected Same tool, No PII collected Replace Flurry: no phi collected Same tool, No PHI collected Replace Flurry: ram-only event queue Same tool, RAM-only event queue Replace Flurry: fewer third-party sdks Same tool, Fewer third-party SDKs Replace Flurry: smaller app binary Same tool, Smaller app binary Replace Flurry: faster cold start Same tool, Faster cold start Replace Flurry: eu data residency Same tool, EU data residency Replace Flurry: self-hosted deployment Same tool, Self-hosted deployment Replace Flurry: open-source sdk + server Same tool, Open-source SDK + server Replace Firebase Analytics: 5-field event schema Same outcome, Firebase Analytics Replace Google Analytics for Firebase: 5-field event schema Same outcome, Google Analytics for Firebase

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.

Get started with the SDKs See pricing

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /