---
title: 'MeetingBank: Council Meeting Summarization'
url: https://www.emergentmind.com/topics/meetingbank-dataset
type: topic
---

# MeetingBank: Council Meeting Summarization

MeetingBank is a large-scale benchmark dataset curated to advance research in meeting summarization, with a focus on real-world city council meetings. Covering six major U.S. municipalities from 2014 to 2022, it incorporates professionally written minutes, high-fidelity transcripts, and granular segment-to-summary alignments. MeetingBank distinguishes itself from prior corpora via its scope, annotation strategy, and support for both extractive and abstractive summarization research [2305.17529].

## 1. Corpus Composition and Statistics

MeetingBank aggregates 1,366 council meetings from Seattle, King County (WA), Denver (CO), Boston (MA), Alameda (CA), and Long Beach (CA) between 2014 and 2022. The collection comprises 3,579 hours of video, with meetings averaging 2.6 hours and 38 distinct speakers per session. Transcripts yield an average of 28,358 tokens per meeting. Adopting a "divide-and-conquer" methodology, the dataset segments meetings according to agenda items or official minutes, producing 6,892 discrete summarization instances.

For each instance:

- The source transcript segment averages 2,892 tokens.
- The corresponding professional-writer-crafted summary averages 87 tokens, typically succinctly describing the underlying ordinance or council action.
- The mean segment compression rate is approximately 97%.

Meeting distribution per city:

| City        | Meetings | Segments |
|-------------|----------|----------|
| Seattle     | 256      | –        |
| King County | 238      | –        |
| Denver      | 25       | –        |
| Boston      | 139      | –        |
| Alameda     | 386      | –        |
| Long Beach  | 322      | –        |

Total summarization instances: 6,892. These figures position MeetingBank as at least an order of magnitude larger than prior public corpora such as ICSI and AMI.

## 2. Data Organization and File Structures

MeetingBank's file hierarchy is structured by city and meeting ID, with each meeting directory typically containing:

- `transcripts.json`: Word-level, time-aligned transcripts with diarization, generated by Speechmatics.
- `minutes.pdf`: The official city clerk's minutes.
- `agenda.json` (if available): Council Bill (CB) numbers and titles.
- `segments.json`: Records each segment with fields:
    - segment_id
    - CB_id (e.g., "2022-0578")
    - start_time, end_time (hh:mm:ss)
    - source_transcript (plain text)
    - reference_summary (short text)
- `metadata.json`: High-level meeting metadata (meeting_title, meeting_date, video_url, minutes_url).

Alignment leverages official time-stamped indexes provided by the cities:

1. Parse agenda or minutes for ordered CB numbers and their summaries.
2. Scrape the city's video index for start/end timestamps per agenda item.
3. Slice transcripts using these timestamps to form segments.
4. Associate each segment with the corresponding official summary.

No dynamic time warping or embedding-based alignment is required; city-provided indexing directly determines segmentation and pairing.

## 3. Annotation Model and Summarization Standards

MeetingBank utilizes the verbatim extracts of CB descriptions from city minutes as reference summaries, operating under the following assumptions:

- Each description succinctly encapsulates the core issue, action, or referral, runs 10–100 words, and is publicly releasable.
- Professional minute-taking mandates inclusion of key points, decisions, and actions, while omitting procedural or tangential discussion, in a standardized civic register.

The segment–summary alignment schema in `segments.json` comprises:

```json
{
  "segment_id": "...",
  "CB_id": "...",
  "start_time": "00:06:24",
  "end_time": "00:18:19",
  "transcript": "Speaker 0: … Speaker 7: …",
  "summary": "Recommendation to authorize …"
}
```

This schema enables task definition for both extractive and abstractive summarization research at the agenda item level, reflecting best practices identified in prior work (e.g., Zechner 2002; Murray et al. 2010).

## 4. Evaluation Protocols and Performance Benchmarks

The dataset's 6,892 segments are partitioned into train (5,169), development (861), and test (862) splits. Baselines include:

- **Extractive:** Oracle (optimal selection of source sentences), LEAD-3 (first 3 sentences), TextRank, LexRank.
- **Abstractive (fine-tuned on MeetingBank):** BART-large, Pegasus, Longformer, HMNet, DialogLM.
- **Prompted Large Model:** GPT-3 (text-davinci-003) with a 2-sentence prompt.

Automated evaluation metrics deployed:

- **ROUGE-n Recall:** 
    $$
    R_n = \frac{\sum_{gram \in Ref} \min(\mathrm{Count}_{Sys}(gram), \mathrm{Count}_{Ref}(gram))}{\sum_{gram \in Ref} \mathrm{Count}_{Ref}(gram)}
    $$
- **BLEU:** 
    $$
    BLEU = BP \exp\left( \sum_{n=1}^N w_n \log p_n \right)
    $$
    $$
    BP = \begin{cases}
    1 & c > r \\
    e^{1 - r/c} & c \leq r
    \end{cases}
    $$
- **Additional:** METEOR, ROUGE-we, BERTScore, MoverScore, QAEval.

Extractiveness measures per Grusky et al. (2018):

- **Coverage:** $Coverage(S,D) = \frac{|\{w:w\in S \land w \in D\}|}{|S|}$
- **Density:** $Density(S,D) = \frac{1}{|S|}\sum_{i=1}^k |f_i|^2$

Main findings:

- The Extractive Oracle achieves R-2 ≈ 46.6%, indicating significant verbatim overlap in summaries.
- Fine-tuned abstractive models (DialogLM, Pegasus) achieve R-1 ≈ 70, R-2 ≈ 60 on test.
- Prompted GPT-3 summaries are fluent/coherent but less informative/factually complete.

Human evaluation: Nine annotators scored 200 segments by Informativeness, Factuality, Fluency, Coherence, and Redundancy (5-point Likert):

- Pegasus: mean ≈ 3.9/5 among abstractive models.
- GPT-3: highest overall (4.2), with Fluency (4.5) and Coherence (4.4) leading.

## 5. Access, Licensing, and Applicability

MeetingBank is fully public at [https://meetingbank.github.io](https://meetingbank.github.io), with download via:

```bash
git clone https://github.com/meetingbank/MeetingBank.git
```

A minimal data loader in Python:

```python
import json, pathlib
root = pathlib.Path("/path/to/MeetingBank")
for city_dir in root.iterdir():
    for meeting_dir in city_dir.iterdir():
        segfile = meeting_dir / "segments.json"
        data = json.loads(segfile.read_text())
        for inst in data:
            src = inst["transcript"]
            ref = inst["summary"]
            # … train or evaluate your model …
```

All underlying documents are public-domain or subject to open-records policies of the respective cities; users must verify compliance with individual "terms of use." Citation is requested as:

Hu, Y., Ganter, T., Deilamsalehy, H., Dernoncourt, F., Foroosh, H., & Liu, F. (2023). MeetingBank: A Benchmark Dataset for Meeting Summarization. arXiv:2305.17529.

With a scale ten times greater than ICSI/AMI, heterogeneous speakers and councils, and fine-grained segment–level annotation, MeetingBank establishes a robust testbed for research on long-form, multi-speaker meeting summarization [2305.17529].

Source: https://www.emergentmind.com/topics/meetingbank-dataset