--- title: "Anonymous Tracking" slug: "mapp-intelligence-ios-sdk-v5-anonymous-tracking" updated: 2026-04-30T12:03:57Z published: 2026-04-30T12:03:57Z canonical: "docs.mapp.com/mapp-intelligence-ios-sdk-v5-anonymous-tracking" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.mapp.com/llms.txt > Use this file to discover all available pages before exploring further. # Anonymous Tracking Anonymous tracking sends requests without generating or storing an everID. This avoids user-level recognition in Mapp Intelligence at the cost of significantly reduced data quality. Use it only when explicitly required by your data privacy team. Before you start, complete the [Quickstart](/v1/docs/mapp-intelligence-ios-sdk-v5-quickstart) so the SDK is initialized. > [!CAUTION] > **Important:** Anonymous tracking impacts session detection (causing session breaks) and user recognition between sessions. User matching between Mapp Engage and Mapp Intelligence does **not** work while anonymous tracking is active. --- ## What is unavailable while anonymous tracking is active - Migrating from iOS SDK v4 to v5 without loss of historical data - Reading the everID via [Get the User Ever ID](/v1/docs/mapp-intelligence-ios-sdk-v5-get-user-ever-id) - Seeding the everID at initialization (`andWithEverID:`) - User matching between Mapp Engage and Mapp Intelligence (see [User Matching](/v1/docs/mapp-intelligence-ios-sdk-v5-user-matching)) --- ## Properties and methods | API | Description | Default | | --- | --- | --- | | `anonymousTracking` (BOOL property) | Enables anonymous tracking without suppressing additional parameters. | `false` | | `enableAnonymousTracking(_ suppressParams: [String]?)` | Enables anonymous tracking and additionally suppresses the listed parameters or tags from each request. | — | | `setTemporarySessionId(_ id: String)` | Sets a temporary, session-scoped user ID while anonymous tracking is active. | — | --- ## Examples > [!NOTE] > Anonymous tracking must be enabled **before** calling `initWithConfiguration(...)` if you want it active from the very first request. ### Enable anonymous tracking globally **Swift** ```swift // In AppDelegate.application(_:didFinishLaunchingWithOptions:) MappIntelligence.shared()?.anonymousTracking = true MappIntelligence.shared()?.setTemporarySessionId("user-xyz-123456789") MappIntelligence.shared()?.initWithConfiguration(    [123451234512345],    onTrackdomain: "https://your-trackdomain.com" ) ``` **Objective-C** ```objectivec [[MappIntelligence shared] setAnonymousTracking:YES]; [[MappIntelligence shared] setTemporarySessionId:@"user-xyz-123456789"]; [[MappIntelligence shared]    initWithConfiguration:@[@123451234512345]            onTrackdomain:@"https://your-trackdomain.com"]; ``` ### Toggle anonymous tracking at runtime **Swift** ```swift @IBAction func toggleAnonymousTracking(_ sender: UISwitch) {    if sender.isOn {        // Enable anonymous tracking and suppress the customer visitor ID:        MappIntelligence.shared()?.enableAnonymousTracking(["cd"])        MappIntelligence.shared()?.setTemporarySessionId("user-xyz-123456789")    } else {        MappIntelligence.shared()?.anonymousTracking = false    } } ``` **Objective-C** ```objectivec - (IBAction)toggleAnonymousTracking:(UISwitch *)sender {    if (sender.isOn) {        [[MappIntelligence shared] enableAnonymousTracking:@[@"cd"]];        [[MappIntelligence shared] setTemporarySessionId:@"user-xyz-123456789"];    } else {        [[MappIntelligence shared] setAnonymousTracking:NO];    } } ``` --- ## Related - [Quickstart](/v1/docs/mapp-intelligence-ios-sdk-v5-quickstart) - [Opt-out of Tracking](/v1/docs/mapp-intelligence-ios-sdk-v5-opt-out-tracking) - [User Matching](/v1/docs/mapp-intelligence-ios-sdk-v5-user-matching) - [Migrating from SDK v4 to v5](/v1/docs/mapp-intelligence-ios-sdk-v5-migrating-from-sdk-v4-to-v5)