Speaker Timelines

Use speaker timelines (a sequence of speaker change events from the meeting platform) to track when participants are speaking, noting platform differences that may affect how these timelines are generated.

A speaker timeline shows which meeting participant the platform identified as speaking over time.

Recall.ai includes the timeline in the recording’s Participant Events artifact, which is generated by default. Speaker timelines are also used for speaker-timeline diarization.

Download a speaker timeline

  1. Wait until the recording’s Participant Events artifact has a status of done.
  2. Call Retrieve Bot.
  3. Find the relevant recording in recordings[] and read:
media_shortcuts.participant_events.data.speaker_timeline_download_url

Fetch that URL with an HTTP GET. The URL is presigned, so no Authorization header is needed.

The downloaded JSON contains participant information and the start and end timestamps for each interval. This example shows the key fields:

[
  {
    "participant": {
      "id": 100,
      "name": "Alex"
    },
    "start_timestamp": {
      "relative": 2.5,
      "absolute": "2026-10-25T17:00:02.500Z"
    },
    "end_timestamp": {
      "relative": 8.0,
      "absolute": "2026-10-25T17:00:08.000Z"
    }
  }
]

See the complete speaker timeline schema for all fields.

Timestamps

Each timestamp includes:

  • relative: seconds since recording began, based on the bot’s latest in_call_recording status change (e.g., relative: 2.5 means 2.5 seconds after the recording began).
  • absolute: the event’s date and time in ISO 8601 format.

Receive speaker events in real time

Configure a Real-Time Endpoint and subscribe to:

  • participant_events.speech_on
  • participant_events.speech_off

Note that tthe speech_on indicates that audio was emitted from the participant's tile, which can include but isn't limited to speech (e.g., couging, sneezing, and background noise can cause a speech_on event to fire).

See Real-Time Event Payloads for the event format. The timing of these events varies by meeting platform, as described below.

Understand platform differences

Speaker timelines reflect the meeting platform’s active-speaker signals.

PlatformBehavior
ZoomEvents are based on participant audio. The same participant can produce multiple events during one speaking turn.
Other supported platformsEvents are based on speaker changes. A new speaker transition produces speech_off for the previous speaker and speech_on for the new speaker.
🚧

Timing varies by platform

On non-Zoom platforms, a speech_off event marks a speaker transition and may arrive after the participant has stopped talking. Account for this when interpreting speaking intervals or calculating speaking time.

For diarization methods and platform requirements, see Diarization.

FAQs

Does screen-share audio generate speaker events?

No. Speaker events are generated for meeting participants; screen-share audio does not generate speaker-change events.

Why is there a speech_on event but no transcript text for that period?

A speech_on event indicates that the meeting platform identified a participant as an active speaker. It does not guarantee that the audio contains recognizable words. Coughing, sneezing, or background noise can trigger an event without producing transcript text.

On platforms that report speaker changes, the active-speaker interval can also include silence before another participant starts speaking. Speaker events and transcript words therefore do not have a one-to-one relationship.

Review the recording to confirm that there was speech during a speech_on interval.




Did this page help you?