---
source_url: https://www.pubnub.com/docs/general/setup/account-setup
title: PubNub Account Setup
updated_at: 2026-06-04T11:10:32.605Z
---

> Documentation Index
> For a curated overview of PubNub documentation, see: https://www.pubnub.com/docs/llms.txt
> For the full list of all documentation pages, see: https://www.pubnub.com/docs/llms-full.txt


# PubNub Account Setup

:::tip Public Admin Portal demo
Want to browse through the Admin Portal without creating an account? Explore it through the [Public Demo](https://demo-admin.pubnub.com/) that shows examples of most PubNub features for transport and logistics use case.
:::

Build real-time applications on PubNub that perform reliably and securely at global scale. [Create an account to get started](https://admin.pubnub.com/#/signup).

Before setup, confirm network access.

##### Whitelisting IPs

If your firewall blocks all traffic, allow PubNub domains and subdomains: `*.pubnub.com`, `*.pndsn.com`, `*.pubnub.net`, and `*.pubnubapi.com`.

If your network policies need IPs instead of domains, you must be on a [paid plan](https://www.pubnub.com/pricing/). [Contact PubNub Support](https://support.pubnub.com/hc/en-us/requests/new) for the full list of publicly accessible inbound and outbound PubNub Network IP addresses.

Your first API keys are the `Demo Keyset`. It includes a publish key, a subscribe key, and a secret key. These keys are rate-limited. To help you get started, some services are enabled by default.

:::warning Limit of 3 keysets for Free tier accounts
Effective February 3, 2025, all [Free tier](https://www.pubnub.com/pricing/) accounts are limited to a maximum of three keysets. If your account exceeds this limit, you must delete existing keysets to create new ones.
:::

When you're ready to push the PubNub Network a bit more, create a new set of keys, preferably in a new app, on the [Admin Portal](https://admin.pubnub.com/). Any new API keys that you create aren't rate-limited, and have fewer PubNub services enabled by default. You'll enable services on your API keys as required.

:::tip Demo and placeholder keys
You may come across keys called `myPublishKey` and `mySubscribeKey` in the documentation. These are placeholders that you replace with your own publish and subscribe keys.
You may also come across keys with a value of `demo`. These demo keys are rate-limited for demonstration use and not suitable for your own apps.
:::

## Environment-Aligned keys

Create multiple PubNub API keys (pub/sub keys) for a given application. Developers can implement new features while QA verifies the next version, and customers remain unaffected. Use the [Admin Portal](https://admin.pubnub.com/) to add API keys. Configure their features consistently as required (such as Presence, Message Persistence, and Mobile Push).

For example, in your Admin Portal, you might have two PubNub Apps, each with three sets of API keys:

| App | API Keys |
| --- | --- |
| DateNight App | Development Keys, QA Keys, Production Keys |
| TheGuideUpdate App | Development Keys, QA Keys, Production Keys |

Admin Portal helps you distinguish between your testing and production keysets by labelling them according to their purpose.

![Screenshot of Admin Portal showing keysets labeled Production and Testing to help distinguish environments](https://www.pubnub.com/assets/images/prod-test-keysets-f3ea852d358dee2b3494ace091c1fa59.png)

Testing keysets have limits and are unsuitable for production. You can create Production keysets only on a [paid pricing plan](https://www.pubnub.com/pricing/) (Starter or Pro).

## Pricing model

PubNub offers the **Monthly Active User (MAU)** pricing model. It is based on the number of unique users who connect to PubNub at least once in a calendar month.

Monthly Active Users (MAU)
1k
5k
10k
15k
25k
50k
10M+
Platform Pro
(Estimated)
Free
0
Your estimated price for
1,000
MAU.
[Contact Sales](https://www.pubnub.com/company/contact-sales/)
The pricing shown is representative of most simple use cases.
[View full pricing details](https://www.pubnub.com/pricing/)

The MAU model fits apps where users connect multiple times per month. It makes costs easier to estimate because it counts users or devices that connect in a month. It also provides a simple metric to forecast cost.

:::note Unique User ID
The MAU model is linked to the [User ID](https://www.pubnub.com/docs/general/setup/users-and-devices#user-id-usage). It represents a user who signs in on one or more devices. Set the User ID in the client to identify the user across sessions. Reuse the same User ID for the user’s lifetime. Set the User ID to connect to PubNub.
:::

If your use case involves many clients that connect infrequently, or a mix of some heavy-traffic clients and some that connect for a short period, [contact sales](https://www.pubnub.com/company/contact-sales/) to discuss the available options.

With a free PubNub account, you can test your code with up to 200 MAUs at no cost. The PubNub Starter Plan includes 1000 MAUs.

For more details on the pricing models, refer to the [Pricing](https://www.pubnub.com/pricing/) page and to [Transaction Classification](https://www.pubnub.com/pricing/transaction-classification/) for details on the different transaction types.

## Next steps

Learn about setting up your application to initialize and use PubNub correctly: visit [Application Setup](https://www.pubnub.com/docs/general/setup/application-setup).

## Terms in this document

* **Access Manager** - A cryptographic, token-based permission administrator that allows you to regulate clients' access to PubNub resources, such as channels, channel groups, and user IDs.
* **Action** - The type of activity (procedure) to execute when a condition is satisfied (for example, sending a message).
* **Billing alert notification** - A means of informing a user that a billing alert has been triggered. Before notifications can happen, a billing alert must be triggered first.
* **Business Object** - A container for data fields and metrics that defines aggregations and data sources.
* **Channel** - A pathway for sending and receiving messages between devices, created automatically when you first use it, that can handle any number of users and messages for different communication needs, like 1-1 text chats, group conversations, and other data streaming.
* **Channel pattern** - A way to group and analyze channel data to track performance metrics like message counts and user engagement over time with PubNub Insights.
* **Condition** - A requirement that must be satisfied or evaluated to true for an action to be executed. Input in a decision table.
* **Cryptor** - An implementation of a specific cryptographic algorithm used for data encryption/decryption that adheres to a standard interface.
* **Dashboard** - A collection of widgets (charts) that give an overview of the metrics one is evaluating.
* **Data fields** - Data you want Illuminate to track. These can be quantitative (measures), like "Number" or "Timestamp" or qualitative (dimensions) values, like "String" that can be used to categorize and segment data. Data fields can be aggregated and calculated.
* **Decision** - A collection (or decision table) of conditions and actions. When conditions are satisfied, the corresponding actions are triggered as per defined rules.
* **End Customer** - A customer of a PubNub partner. End customers do not have direct access to the Admin Portal. Instead, they interact with PubNub products—such as Illuminate—through the partner’s portal, where PubNub services are embedded. They can create PubNub objects only within this partner-provided environment.
* **Entity** - A subscribable object within a PubNub SDK that allows you to perform context-specific operations.
* **Listener** - A function or objectthat reacts to events or messages, like new chat messages or connection updates, letting your app respond in real-time.
* **Mapped/Unmapped** - Whether the data source for a data field has been defined or the action has been configured.
* **MCP Server** - A Model Context Protocol server that coordinates communication and synchronization between AI agents, clients, or services, such as Cursor IDE and Windsurf.
* **Message** - A unit of data transmitted between clients or between a client and a server in PubNub, containing information such as text, binary data, or structured data formats like JSON. Messages are sent over channels and can be tracked for delivery and read status.
* **Metric** - What exactly is evaluated using measures and dimensions (collectively called data fields), as well as aggregation functions.
* **Module** - A Functions v1 container that groups related functions for configuration and deployment on an app’s keysets.
* **Origin** - The subdomain used to establish a connection to the PubNub network that allows your application's traffic to appear like it's coming from your own domain.
* **Package** - A Functions v2 container that groups Functions, tracks Revisions, and is deployed to keysets.
* **Partner** - A PubNub customer who resells PubNub products, such as Illuminate, to their own customers. Partners have access to the Admin Portal, enabling them to create and manage PubNub objects for themselves or on behalf of their end customers.
* **Publish Key** - A unique identifier that allows your application to send messages to PubNub channels. It's part of your app's credentials and should be kept secure.
* **PubNub** - PubNub is a real-time messaging platform that provides APIs and SDKs for building scalable applications. It handles the complex infrastructure of real-time communication, including: Message delivery and persistence, Presence detection, Access control, Push notifications, File sharing, Serverless processing with Functions and Events & Actions, Analytics and monitoring with BizOps Workspace, AI-powered insights with Illuminate.
* **Push token** - A device identifier issued by a push provider (APNs or FCM) used to register a device for receiving mobile push notifications.
* **Rule** - A definition (row in a decision table) stating which action should be triggered for which condition.
* **Service Integration** - A machine identity that represents a program or service consuming the Admin API, scoped to your account and authenticated using expirable API keys with configurable permissions.
* **Signal** - A non-persistent message limited to 64 bytes designed for high-volume usecases where the the most recent data is relevant, like GPS location updates.
* **Subscribe Key** - A unique identifier that allows your application to receive messages from PubNub channels. It's part of your app's credentials and should be kept secure.
* **Timetoken** - A unique identifier for each message that represents the number of 100-nanosecond intervals since January 1, 1970, for example, 16200000000000000.
* **Trigger details** - A set of predefined criteria for a given billing alert. When met, billing alert notifications are generated.
* **User** - An individual or entity that interacts with a system, application, or service. In PubNub, a user typically refers to someone who sends or receives messages through the platform, identified by a unique user ID or username.
* **User ID** - UTF-8 encoded, unique string of up to 92 characters used to identify a single client (end user, device, or server) that connects to PubNub.
* **Vibe Coding** - A way to build applications in an intuitive, relaxed, and improvisational manner, using AI tools and natural language descriptions.
