> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trytalkvalue.com/llms.txt
> Use this file to discover all available pages before exploring further.

# talkvalue path analysis channel audience

> Audience overlap across 2–5 channels: intersection counts plus aggregate multi-channel reach.

Compute how much audience overlap exists across a group of channels. The response carries each channel's own size, every n-way intersection (pairs, triples, and so on), and aggregate metrics: total unique reach, the count of people in more than one channel, and the multi-channel rate. The dashboard [Audience overlap](/path/analytics/audience) card uses the same query.

## Synopsis

```bash theme={null}
talkvalue path analysis channel audience --channel-id <id> --channel-id <id> [...]
```

## Options

| Flag                | Type                           | Description                                                                          |
| ------------------- | ------------------------------ | ------------------------------------------------------------------------------------ |
| `--channel-id <id>` | integer (required, repeatable) | Channel ID to include in the overlap. Repeat to add more. Between 2 and 5 IDs total. |

The command exits with a usage error if fewer than 2 or more than 5 channel IDs are provided.

## Examples

### 1. Two-channel overlap

```bash theme={null}
talkvalue path analysis channel audience \
  --channel-id 7 --channel-id 12 --json \
  | jq '{intersections: .data.intersections, metrics: .data.metrics}'
```

Returns the single 2-way intersection plus the aggregate metrics for channels `7` and `12`.

### 2. Find the largest overlap in a trio

```bash theme={null}
talkvalue path analysis channel audience \
  --channel-id 7 --channel-id 12 --channel-id 19 --json \
  | jq '.data.intersections | sort_by(-.count) | .[0]'
```

Sorts every n-way intersection by member count and returns the largest. The result includes the 3-way intersection plus every 2-way pair, so you can spot redundancy at a glance.

### 3. Capture the multi-channel rate for tracking

```bash theme={null}
talkvalue path analysis channel audience \
  --channel-id 7 --channel-id 12 --channel-id 19 --channel-id 25 --json \
  | jq -r '[.data.metrics.multiChannelRate, (now | strftime("%Y-%m-%d"))] | @csv' \
  >> "reports/multi-channel-rate.csv"
```

Appends the day's multi-channel rate to a long-form CSV. Useful for tracking how concentrated your audience is over time.

## Response

```jsonc theme={null}
{
  "data": {
    "channels": [
      { "id": 7,  "name": "Newsletter",  "icon": "mail", "color": "#5252FF", "personCount": 1843 },
      { "id": 12, "name": "Webinars",    "icon": "video", "color": "#FF6B5C", "personCount": 920 },
      { "id": 19, "name": "Beta List",   "icon": "flask", "color": "#34C77B", "personCount": 412 }
    ],
    "intersections": [
      { "channelIds": [7, 12],     "count": 318 },
      { "channelIds": [7, 19],     "count": 142 },
      { "channelIds": [12, 19],    "count": 87 },
      { "channelIds": [7, 12, 19], "count": 41 }
    ],
    "metrics": {
      "totalUniquePersons": 2589,
      "personsInMultipleChannels": 506,
      "multiChannelRate": 0.1954
    }
  }
}
```

`channelIds` in each intersection is sorted ascending. `multiChannelRate` is `personsInMultipleChannels / totalUniquePersons`.

## See also

* [`analysis channel attribution`](/cli/commands/path/analysis/channel-attribution). Per-event breakdown for a single channel.
* [`channel list`](/cli/commands/path/channel/list). Discover channel IDs to feed into the overlap.
* [Audience overlap](/path/analytics/audience). The dashboard surface this command mirrors.
* [Recipe: Channel analysis](/cli/recipes/channel-analysis). Compose attribution and overlap in one script.
