Build apps using CloudKit

Store your app’s data in iCloud and keep everything up to date across devices and on the web. Featuring efficient syncing, as well as simple monitoring and management, it’s never been easier to build and grow your apps with CloudKit. Store private data securely in your users’ iCloud accounts for limitless scale as your user base grows, and get up to 1PB of storage for your app’s public data.

Overview

CloudKit is designed for manageability, flexibility, and power. By organizing apps in containers, CloudKit ensures each app is siloed so its data won’t get entangled with other apps. Specialized databases and zones also let you easily separate app information by access type or function. And together with efficient syncing and sharing capabilities, CloudKit provides a comprehensive feature set that lets you easily develop powerful cloud apps.

  • Automatic syncing. Seamlessly syncs across iOS, iPadOS, macOS, tvOS, watchOS, visionOS and the web.
  • Encrypted data. Configure fields in private CloudKit databases to be encrypted, ensuring data protection in storage and in transport to your application.
  • Protected privacy. Develop, analyze, and debug your apps without exposing your users’ personally identifiable data.
  • Automation. Easily automate your development processes.

Learn about designing apps for CloudKit

CloudKit Console

The CloudKit Console is an intuitive web-based control panel that you can use throughout the development lifecycle of your app. View your app’s server activity, manage your containers, maintain your database schema, and view and edit test data during every phase — from development to production.

  • Data. Access data stored directly in CloudKit Database.
  • Schema. View, edit, and promote your CloudKit Database schema.
  • Telemetry. View a collection of charts to measure the overall aggregate performance, reliability, and usage of your apps across all of your users’ devices.
  • Logs. Analyze and evaluate app performance with comprehensive up-to-date server log data, while maintaining user privacy.
  • Notifications. Stay on top of changes to your container and configure custom alerts to monitor your app’s interactions with CloudKit.

View the console

Get started with CloudKit

Designing for CloudKit

Creating an application that stores structured app and user data in iCloud is simple. Learn how to enable CloudKit in your project so you can create and deploy schemas for your app, fetch records, subscribe to changes to improve performance, and test your app on multiple devices before deployment.

Learn about designing apps for CloudKit

CloudKit sample projects

Learn more about adding CloudKit support to your project from our Sample Projects on GitHub.

View sample projects

CloudKit framework

Leverage the full power of iCloud and build apps for all Apple platforms with CloudKit. Easily and securely store, then efficiently retrieve your app data from a database or assets right from iCloud.

View the framework reference

CloudKit development automation

CloudKit offers helpful tools that let you easily automate development processes to prepare your CloudKit database for integration tests.

Learn about CloudKit automation