<!--
{
  "documentType" : "article",
  "framework" : "ClockKit",
  "identifier" : "/documentation/ClockKit/enabling-complications-for-your-watchos-app",
  "metadataVersion" : "0.1.0",
  "role" : "article",
  "title" : "Enabling Complications for Your watchOS App"
}
-->

# Enabling Complications for Your watchOS App

Set up your watchOS app’s complications.

## Discussion

Before adding complications to the Apple Watch face, you must enable support for them in your app. You can include the complications when you create a new app, or add complications to an existing app.

### Include Complications in a New App

Check Include Complications to enable complications when creating a new watchOS app, as shown in the figure below.

![The option sheet with the Include Complications option enabled.](images/com.apple.clockkit/media-3570873@2x.png)

When you include complications, Xcode creates and configures a complication data source for your app. The data source includes stubs for many of the methods required to configure your complications, populate your timeline, and provide placeholders. Xcode also creates a group in your extension’s assets catalog for static placeholder images.

### Add Complications to an Existing App

To add complications to an existing watchOS app, you need to create these items yourself. Start by creating a class that adopts the [`CLKComplicationDataSource`](/documentation/ClockKit/CLKComplicationDataSource) protocol.

```swift
import Foundation
import ClockKit

class ComplicationController: NSObject, CLKComplicationDataSource {

    func getCurrentTimelineEntry(for complication: CLKComplication, withHandler handler: @escaping (CLKComplicationTimelineEntry?) -> Void) {
        // TODO: Finish implementing this required method.
    }
}
```

Next, add a Complication group to your extension’s assets catalog (if one doesn’t already exist). Open the `Assets.xcassets` file and select Editor > Add Assets > watchOS > New Watch Complication Placeholder, as in the figure below.

![A screenshot of the Complication group in the extension’s assets catalog.](images/com.apple.clockkit/media-3570878@2x.png)

Finally, select your app in the Project navigator, and open the extension’s General tab. In the Complication Configuration set the Data Source Class and Complication Group to the class and asset catalog group you just created.

![A screenshot that shows the complication configuration settings, with the data source and asset group specified.](images/com.apple.clockkit/media-3570877@2x.png)

## See Also

[Declaring complications for your app](/documentation/ClockKit/declaring-complications-for-your-app)

Define the complications that your app supports.

[Creating a timeline entry](/documentation/ClockKit/creating-a-timeline-entry)

Package your app-specific data into a template and create a timeline entry for that template.

[Loading future timeline events](/documentation/ClockKit/loading-future-timeline-events)

Preserve battery life and improve performance on the watch by providing a timeline with expected data and updates.

[Keeping your complications up to date](/documentation/ClockKit/keeping-your-complications-up-to-date)

Replace or extend the data in your complication’s timeline.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)