Package licenses
Choose the offer you need
A portal account or hosted subscription does not by itself grant proprietary mesh SDK distribution rights. Local peer-to-peer traffic is never metered on any plan. Hosted relay deliveries, telemetry and other hosted products have separate quotas and charges.
A hosted relay delivery is one message the Offline Protocol hosted relay accepts for one recipient and then delivers or holds for delivery. A group message counts once for each member it reaches, and a retry of the same message counts once. Delivery acknowledgements and messages that reach no one are not counted. Messages that devices forward for each other over Bluetooth LE or another local transport (mesh relays) never pass through the hosted relay and are never metered, even though Mesh SDK telemetry reports them.
Apple App Store distribution
The commercial license is the supported option for Apple App Store distribution. Review the versioned licensing FAQ before choosing a distribution route. AGPL-3.0-only use is free, including in production and in commercial products, as long as you meet its obligations: the combined work is licensed under AGPL-3.0, and you offer its corresponding source to its users, including users who interact with it over a network (section 13). Upgrade from the Billing tab in the portal, or contact sales@offlineprotocol.com for Enterprise. For SDK licensing and OEM distribution rights, contact legal@offlineprotocol.com. Use the production checklist to prepare the device, workflow and support requirements for your deployment.Hosted plans and usage
Self-service plans use Stripe Checkout in the portal’s Billing tab. Monthly quotas and analytics history are:
MAU means monthly active users. Proof of Location runs on the Ethereum Sepolia testnet; a plan allowance or overage charge does not change its release status.
Usage beyond a plan’s quotas is billed at the end of each month:
Usage warnings, billing limits and pauses
Owners, admins and billing members get an email, and the portal shows a banner, when a meter reaches 80% and 100% of its monthly quota. What happens next depends on how the organization pays:
The metered hosted services are OfflineID sign-ins (every method: email codes, Google, Privy and guest sessions), hosted relay deliveries, telemetry ingest and Proof of Location verifications.
- Free without a card. When any meter uses its full quota, all metered hosted services pause. They resume as soon as you add a card or choose a paid plan in Billing, or when the next billing period starts.
- Billing limits. With a card on file you can set a billing limit for each meter in Billing. Charges for that meter never exceed the limit. When usage reaches it, that meter’s service pauses (other services keep running) until you raise or remove the limit, or the next billing period starts. You get an email when this happens.
- Failed payments. While Stripe retries a failed payment, services keep running. If the payment still fails after the retries, all metered hosted services pause until you update the card in Billing and the invoice is paid.
- Monthly active users count each end user who signs in to an application at least once in the calendar month (UTC), whichever sign-in method they use. Each guest session counts as one user in the month it starts. Sign-ins sent with the application’s older
proj_ID count toward the same application as itsapp_ID. A person who signs in to two of your applications counts once in each.
OfflineID, hosted relay and Proof of Location usage is counted within minutes, so their pauses start within a few minutes of the quota or limit being reached. Telemetry events are counted once a day, so a telemetry pause can start up to a day later. A pause lifts within a minute or two of adding a card, choosing a plan or raising a limit. Data is never deleted because of a pause. The developer terms govern plans and billing.
Local peer-to-peer traffic is never metered or paused. Hosted subscriptions and usage charges remain separate from SDK licensing.
Subscriptions, invoices and refunds
Owners, admins and billing members manage the plan in Billing. Subscribing, adding a card and upgrading each require accepting the Developer Terms in the portal, and Stripe Checkout asks for the same acceptance with its own checkbox. Checkout shows the billing terms above the subscribe button: “Billed monthly, cancel anytime. All subscriptions are non-refundable.” Adding a card on Free shows “No charge today. Usage beyond the Free plan’s quotas is billed monthly.” We record each acceptance with the account, time, IP address, terms version and the billing summary shown.- Billing period. Plans bill by calendar month (UTC). The first invoice is prorated to the end of the month.
- Upgrades are charged the prorated difference immediately and take effect once it is paid.
- Downgrades and cancellation. To cancel a paid plan, downgrade to Free. A downgrade takes effect at the end of the current billing period, and the current plan continues until then. Keep plan in Billing undoes a scheduled downgrade.
- Overage for a month is invoiced at the start of the next month, rounded to the nearest cent. When a paid plan ends, the final month’s overage is invoiced separately.
- Refunds. Fees are non-refundable, including for partial months and unused quota. Billing errors and duplicate charges are corrected by refund or credit.
- Invoices, receipts and cards are in the Stripe customer portal, opened from Billing.

