---
title: Disabling Automatic SDK Initialization - iOS (classic)
description: Learn how to disable the autostart feature and programmatically start the SDK when needed
lastUpdated: 09 October 2025
source_url:
  html: https://docs.contentsquare.com/en/ios/disable-autostart/
  md: https://docs.contentsquare.com/en/ios/disable-autostart/index.md
---

> Documentation index: https://docs.contentsquare.com/llms.txt
> Use this file to discover all available pages before exploring further.

The latest CSQ SDK is here! Learn how to [upgrade your app](https://docs.contentsquare.com/en/csq-sdk-ios/experience-analytics/upgrade-from-cs-sdk/).

If you prefer to control when the SDK starts, you can disable the autostart feature and programmatically start the SDK when needed.

The first step is to add the required key to your `Info.plist`. The key is `CSDisableAutostart` of type boolean. To disable the autostart, you need to set its value to `true`:

* Disable autostart using Xcode:

  ![](https://docs.contentsquare.com/_astro/disable-autostart-xcode.Cn62PlRu_Z1Kvzee.webp)

* Disable autostart using a text editor:

  **Info.plist**

  ```xml
  <key>CSDisableAutostart</key>
  <true/>
  ```

Then call `start()` in the `application:didFinishLaunchingWithOptions:` of your `UIApplicationDelegate`:

```swift
import UIKit


@main
class AppDelegate: UIResponder, UIApplicationDelegate {


    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        Contentsquare.start()
        return true
    }
    // ...
}
```

When you call the start method, the SDK automatically starts tracking users' interactions with the app (gestures, lifecycle events and crashes).

Warning

Calling `start()` in `UISceneDelegate#scene(_:willConnectTo:options:)` does not work.
