CloudKit
What it is
CloudKit is Apple’s service for developers building apps that store structured app and user data in iCloud. Data is organized into containers with public, private, and shared databases, and automatic bidirectional syncing is supported across iOS, iPadOS, macOS, tvOS, watchOS, visionOS, and the web. Apple Developer Program membership includes up to 1PB of free storage for each app. Developers can manage containers and schemas, inspect test data, and review telemetry, logs, and alerts in CloudKit Console. Private database fields can be configured for encryption in storage and in transit to the application. The service separates sandbox development from production, where schemas can only be changed in a forward-compatible manner. Automation supports integration tests from Xcode or a CI system, and CKTool JS can be embedded in developer tools. CloudKit JS can add CloudKit support to web apps. CloudKit is listed as paid from $99/yr, with a free plan also available. Incoming traffic is subject to limits and controls that may change over time.
For and against
For
- Supports public, private, and shared databases.
- Syncs across Apple platforms and the web.
- Includes up to 1PB of free storage per app with membership.
- Offers console telemetry, logs, and alerts.
- Supports integration tests from Xcode or CI.
Against
- Incoming traffic is subject to changing limits and controls.
- Production schemas only allow forward-compatible changes.
- Pricing is from $99/yr, though a free plan is available.
The verdict
CloudKit combines iCloud data storage and syncing with developer tools for schemas, diagnostics, and testing. Developers should account for production schema constraints and traffic controls that can change over time.
Who it suits
CloudKit suits developers building apps that store structured data in iCloud and need syncing across Apple platforms or the web. Its console and automation features may also suit development teams managing schemas and integration tests.
Plans and prices
CloudKit
Up to 1PB of free storage for each app
Read 7 Oct 2026 · developer.apple.com
On the record
- Access controls
- CloudKit uses role-based access control for public databases, with World, Authenticated, and Creator roles.developer.apple.com · read 7 Oct 2026
- Console
- CloudKit Console lets developers manage containers and schemas, inspect test data, and view telemetry, logs, and alerts.developer.apple.com · read 7 Oct 2026
- Data model
- CloudKit organizes app data into containers with public, private, and shared databases.developer.apple.com · read 7 Oct 2026
- Development environments
- CloudKit provides separate sandbox development and production environments, and production schemas can only be modified in a forward-compatible manner.developer.apple.com · read 7 Oct 2026
- Integrations
- CloudKit automation supports integration tests from Xcode or a CI system, and CKTool JS can be embedded in developer tools.developer.apple.com · read 7 Oct 2026
- Limit
- CloudKit throttles incoming traffic using limits and controls that can change over time.developer.apple.com · read 7 Oct 2026
- Privacy
- Apple says developers can develop, analyze, and debug apps without exposing users’ personally identifiable data.developer.apple.com · read 7 Oct 2026
- Security
- Developers can configure fields in private CloudKit databases to be encrypted in storage and in transit to their application.developer.apple.com · read 7 Oct 2026
- Storage
- Apple says Apple Developer Program membership includes up to 1PB of free storage for each app.developer.apple.com · read 7 Oct 2026
- Syncing
- Automatic syncing is supported across iOS, iPadOS, macOS, tvOS, watchOS, visionOS, and the web.developer.apple.com · read 7 Oct 2026
- Web support
- Apple lists CloudKit syncing across the web and provides CloudKit JS for adding CloudKit support to web apps.developer.apple.com · read 7 Oct 2026
- What it does
- CloudKit stores app data in iCloud and keeps it up to date across devices and on the web.developer.apple.com · read 7 Oct 2026
- Who it is for
- CloudKit is for developers building apps that store structured app and user data in iCloud.developer.apple.com · read 7 Oct 2026
The review
CloudKit is a managed iCloud data service for developers building apps that keep structured information synchronized across Apple devices and the web. It is most compelling for Apple-centered teams that want database organization, access controls, diagnostics, and testing in one platform. The compromise is a very large storage allowance alongside traffic controls and production-schema rules that demand planning.
Overview
CloudKit stores records in containers divided into public, private, and shared databases. That separation is useful when an app combines common content, user-specific data, and collaborative records without forcing every use case into the same access model. Bidirectional synchronization keeps data aligned across iOS, iPadOS, macOS, tvOS, watchOS, visionOS, and the web.
CloudKit does not provide an offline mode, so it is a poor fit for products that must remain fully functional without connectivity. Apple says Apple Developer Program membership includes up to 1PB of free storage for each app, a remarkable allowance for data-heavy projects. Incoming traffic is still throttled, however, and the applicable limits and controls can change over time; high-volume or latency-sensitive services need an architecture that can tolerate that uncertainty.
Key features
Data model and synchronization
Public, private, and shared databases give teams a practical way to model ownership and collaboration. Automatic syncing spans Apple operating systems and the web, while CloudKit JS extends CloudKit support to web applications. Developers can use Swift, Objective-C, or JavaScript, and conflict resolution is custom, leaving application teams responsible for deciding how competing changes are reconciled.
Security and privacy
Role-based access for public databases is organized around World, Authenticated, and Creator roles. Fields in private databases can be configured for encryption both in storage and in transit to the application. Apple also positions the service for development, analysis, and debugging without exposing users’ personally identifiable data, which is valuable for teams handling sensitive user records.
Operations and testing
CloudKit Console provides container and schema management, test-data inspection, telemetry, logs, and alerts. Separate sandbox and production environments support safer iteration, and automation can run integration tests from Xcode or a CI system. CKTool JS can be embedded in developer tools. Production schemas are forward-compatible only, so teams must design migrations carefully: once a schema is deployed, changing it in a backward-incompatible way is not an option.
Pricing
CloudKit is a paid service with pricing from $99/yr. The CloudKit plan is free at $0.00 and includes up to 1PB of free storage for each app. That free allowance makes the plan attractive for developers whose main concern is stored data rather than predictable request volume.
The paid entry price suits teams that need Apple Developer Program access and CloudKit’s production tooling. The free plan does not eliminate traffic throttling, changing controls, the absence of offline mode, or the requirement to work within forward-compatible production schemas. Teams should therefore judge cost by workload behavior, not storage alone.
Platforms
CloudKit is available through APIs and supports iOS, macOS, and web applications. Automatic synchronization also covers iPadOS, tvOS, watchOS, and visionOS. This breadth is a strength for products committed to Apple’s ecosystem; it is less suitable when Android or a platform-neutral backend is a primary requirement.
Who it's for
Choose CloudKit for apps that store structured app and user data in iCloud and need synchronized state across Apple devices or the web. It is particularly well matched to teams already using Xcode and Apple’s development stack, and to products that benefit from public, private, and shared database separation. Look elsewhere if offline operation, platform diversity, or tightly predictable traffic behavior is central to the product.
Pros and cons
Pros
- Up to 1PB per app: Apple’s stated storage allowance removes storage capacity as an immediate constraint for many projects.
- Apple-platform synchronization: Automatic bidirectional sync covers a wide range of Apple operating systems plus the web.
- Useful operational tooling: Console telemetry, logs, alerts, schema controls, sandboxing, and CI integration support a disciplined release process.
- Granular data controls: Public, private, and shared databases, role-based access, and configurable private-field encryption support varied privacy needs.
Cons
- No offline mode: Apps requiring reliable disconnected use need another data layer or service.
- Traffic is throttled: Limits and controls can change, making bursty or request-sensitive workloads harder to plan.
- Production schemas are restrictive: Only forward-compatible modifications are allowed, increasing the cost of careless migrations.
- Conflict handling is custom: Developers must implement their own resolution strategy for competing updates.
Alternatives
Mobile Databases is the broader category to review when you want to compare database approaches rather than commit to CloudKit’s Apple focus.
Espresso is a free option for Android UI testing, including a single target app on Android 4.0.1/API 14 and later.
Firebase Cloud Messaging is a no-cost cross-platform messaging service for Android, iOS, web, APIs, and extensions, rather than a general app-data store.
Firestore is a freemium document database for Android, iOS, web, and APIs, with a free trial and stated daily read and write allowances.
Ditto offers a free tier with 10 cloud device connections, 2GB of storage, 5GB of transfer, no SLA, and limited support; its Pro tier has custom pricing.
FMDB is a free Cocoa/Objective-C wrapper around SQLite for iOS and macOS.
GRDB.swift is a free, MIT-licensed open-source SQLite toolkit for iOS, Linux, and macOS.
Hive has a free-forever tier with 200MB storage, 1,000 AI credits per month, and up to 10 workspace members.
Isar is a free, Apache-licensed open-source database for Android, iOS, and web.
Verdict
CloudKit is the right choice for developers building Apple-first apps that need managed iCloud storage, broad device synchronization, and integrated schema and diagnostic tools. Its strongest reason to choose it is the combination of Apple-native sync and a substantial per-app storage allowance. Look elsewhere when offline support, Android coverage, independently predictable traffic limits, or flexible production schema evolution matters more than tight integration with Apple’s platform.