A channel group is a collection or grouping of individual channels. A channel may be part of multiple channel groups, and a channel group may be shared among multiple subscribers.
Each channel group may contain up to 2,000 channels, and each PubNub instance may subscribe to up to 10 channel groups.
With channel groups, you are able to control client subscription logic remotely. So, as opposed to the client application logic controlling which channels the user is subscribed to, your backend server or other authorized entity can dynamically add/remove channels to/from any channel group.
You can think of channel groups as a list of channels, and this list is persisted. So, if we have created a channel group called ‘my_channel_group’ and added 10 channels to it, those 10 channels will forever remain until explicitly removed. Each SDK contains a function to list all the channels contained in a given channel group.
Additionally, channel groups simplify the process of granting Access Manager subscribe privileges to users. You can grant read permissions for a channel group as opposed to every individual channel in that channel group. To revoke permissions, simply remove the channel from the channel group, as opposed to revoking permissions from that individual channel.
For further learning, please see: