Knock plans and usage
Understand differences between Knock plans and how usage is metered.
Knock offers a Free plan (formerly known as our Developer plan) and two paid plans, Starter and Enterprise. Most features are available across all three plans, with a small set reserved for Enterprise customers only. See our pricing page for current pricing, included volumes, and a feature comparison.
Enterprise features
#Teams choose the Enterprise plan for higher message volume, multi-tenancy and security controls, and compliance requirements that call for a HIPAA business associate agreement (BAA).
The following features are reserved for the Enterprise plan:
- Per-tenant preferences and branding
- Per-tenant guides
- Translations (i18n)
- Batch render limits beyond 10 items
- Custom permission groups
- SAML SSO
- Directory sync
- Data warehouse sync
- Datadog, New Relic, Segment, and Heap extensions
How Knock meters usage
#Knock plans vary in terms of usage models: notification-based plans meter usage on messages sent, while recipient-based plans meter usage based on monthly notified recipients. Regardless of plan, usage may be accrued in any Knock environment.
Message counts
#A message is counted each time a notification is successfully delivered to a single user on a single channel. A workflow that notifies a user by both email and in-app results in two messages. If a channel step is not executed, there is no associated message. A channel step may be skipped due to user preferences, missing data, or other workflow logic.
Due to the nature of guides, guides usage is metered separately and based on active guides users. A user is considered an active guides user if they have received at least one guide in a given month.
Non-production usage
#While using Knock, you'll often send messages to test changes. To avoid unexpected usage from testing, we recommend using sandbox mode or setting channel conditions that restrict delivery to specific test users. Consider enabling environments to keep your tests isolated from your production notifications.
Sandbox mode
#When a channel is in sandbox mode, Knock does not pass messages downstream for delivery. Sandboxed messages are rendered for preview in the Knock dashboard, but do not count toward usage.
To sandbox an invidual test, use the workflow test runner's sandbox setting. It applies sandbox mode to the entire test run, regardless of how each channel is configured. You can also enable sandbox mode in a channel's configuration to apply it across an environment, but a sandboxed channel doesn't deliver to anyone in that environment, so only do this in an environment you use for testing.
Channel conditions
#Channel conditions enable you to scope a channel's delivery to specific conditions per environment. For example, you might set a condition on your email channel to restrict sending to recipients on your own domain while in a non-production environment. Unlike sandbox mode, channel conditions gate delivery selectively rather than suppress it entirely. Any message that satisfies a channel condition may contribute to usage.
Managing multiple accounts
#Most customers need only one Knock account. As you map your resources into Knock, there are two ways to think about separating data within a single account:
- Environments isolate your development lifecycle, from development through production.
- Tenants scope notifications, branding, and preferences to your own customers, brands, or business units.
Some customers maintain separate Knock accounts under a single Enterprise agreement, often for fully distinct products or business units, or when they need independent account-level data, members, and authentication.
Each Knock account is independent: its resources, members, and analytics are scoped to that account, and no configuration is shared between accounts. Accounts can be synchronized programmatically via the Management API, but Knock does not provide any automatic synchronization between separate accounts.