# Creating Feed Groups

### Feed Types

There are 3 feed types:

- [Flat](/activity-feeds/docs/node/v2/flat-feeds/#flat-feeds)

- [Aggregated](/activity-feeds/docs/node/v2/flat-feeds/#aggregated-feeds)

- [Notification](/activity-feeds/docs/node/v2/flat-feeds/#notification-feeds)

Based on these 3 basic feed types you can create your own feed groups.

### 'Which Feed Groups Should I Create?'

We recommend that you create different feed groups for adding activities, and for consuming activities.

- **Flat**  are the only feeds that can be followed, and therefore are a good type to setup for adding activities. Flat can also be used to consume activities from other feeds - in a "timeline"-like manner.

- **Aggregated**  are good for consuming activities in an "aggregated"-like manner. You cannot follow an aggregated feed, but you may on occasion want to add activities to one.

- The  **Notification**  type makes it easy to add notifications to your app. Notifications cannot be followed by other feeds - but you can write directly to a Notification feed.

For example, let’s say you are building a music app similar to Spotify. You may set up the following feeds like so:

- `"notification"` ([Notification](#notification-feeds)): Displaying notifications from anything a user is following.
- `"user"` ([Flat](#flat-feeds)): Adding activities from a user that can be followed.
- `"artist"` ([Flat](#flat-feeds)): Adding activities from an artist that can be followed.
- `"playlist"` ([Flat](#flat-feeds)): Adding activities from a playlist that can be followed.
- `"timeline"` ([Flat](#flat-feeds)): Displaying "user", "artist", or "playlist" activities.

### 'How Do I Create Feed Groups?'

New feed groups can be created in the Feeds section of the Dashboard. By default, we set up four feed groups for your project:

- `"user"` (Type: [Flat](#flat-feeds))
- `"timeline"` (Type: [Flat](#flat-feeds))
- `"aggregated"` (Type: [Aggregated](#aggregated-feeds))
- `"notification"` (Type: [Notification](#notification-feeds))

These four groups cover the average use-cases for most applications. However, you can create any custom named feed group that serves your application needs.

### Feed Group Permissions

There are three types of client-side Feed Permissions that a Feed Group can have

- Private Permissions (example, Timeline Feeds)

- Global Read (example, User Feeds)

- Global Read/Write (no default example, see more below)

The access to these feeds is based on the ID of the feed matching the user_id in the claim on the JWT. For example, the feed "timeline:steve" can only be accessed client-side with a token with "user_id: "steve"" as one of the claims.


---

This page was last updated at 2026-05-22T16:31:47.541Z.

For the most recent version of this documentation, visit [https://getstream.io/activity-feeds/docs/javascript/v2/creating-feeds/](https://getstream.io/activity-feeds/docs/javascript/v2/creating-feeds/).