> ## Documentation Index
> Fetch the complete documentation index at: https://gladia-95-docs-live-recommended-parameters.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Recommended Parameters by Use Case

> Best parameter configurations for pre-recorded transcription depending on your use case.

## Meeting Recorders

Optimize for **structured, speaker-attributed meeting notes**.

| Parameter                                          | Recommended value           | Why                                      |
| -------------------------------------------------- | --------------------------- | ---------------------------------------- |
| `diarization`                                      | `true`                      | Attributes speech to each participant.   |
| `diarization_config.min_speakers` / `max_speakers` | Set a range (e.g. `2`-`10`) | Adapts without over- or under-splitting. |
| `summarization`                                    | `true`                      | Quick review; use `bullet_points` type.  |
| `named_entity_recognition`                         | `true`                      | Surfaces people, orgs, and dates.        |
| `sentences`                                        | `true`                      | Readable output for meeting minutes.     |
| `language_config.languages`                        | Set explicitly              | Avoids detection overhead.               |
| `custom_vocabulary`                                | `true`                      | Company, project, and participant names. |

<Info>
  **Diarization vs. multi-channel:** if each speaker is on a **separate audio
  channel**, use the `channel` field on each utterance — diarization is not
  needed. See [Multiple channels](/chapters/limits-and-specifications/multiple-channels).

  If all speakers share a **single audio channel**, enable `diarization`. See
  [Speaker diarization](/chapters/audio-intelligence/speaker-diarization).
</Info>

## Call Centers

Optimize for **speaker identification** and accuracy on telephony audio.

| Parameter                               | Recommended value              | Why                                     |
| --------------------------------------- | ------------------------------ | --------------------------------------- |
| `diarization`                           | `true`                         | Separates agent and customer speech.    |
| `diarization_config.number_of_speakers` | `2`                            | Most calls have exactly two speakers.   |
| `language_config.languages`             | Set explicitly (e.g. `["en"]`) | Avoids detection errors on noisy audio. |
| `custom_vocabulary`                     | `true`                         | Product, plan, and internal terms.      |
| `summarization`                         | `true`                         | Wrap-up notes for agents.               |

## Podcasts & Interviews

Optimize for **readability** and correct speaker attribution.

| Parameter                                          | Recommended value          | Why                                   |
| -------------------------------------------------- | -------------------------- | ------------------------------------- |
| `diarization`                                      | `true`                     | Essential for multi-speaker content.  |
| `diarization_config.min_speakers` / `max_speakers` | Set a range (e.g. `2`-`4`) | Flexible when speaker count varies.   |
| `sentences`                                        | `true`                     | Readable output for publishing.       |
| `custom_vocabulary`                                | `true`                     | Guest names, show terms, brand names. |
| `language_config.languages`                        | Set explicitly             | Avoids detection overhead.            |

## Subtitles & Captioning

Optimize for **readable on-screen captions**.

| Parameter                                     | Recommended value  | Why                                         |
| --------------------------------------------- | ------------------ | ------------------------------------------- |
| `subtitles`                                   | `true`             | Enables SRT/VTT generation.                 |
| `subtitles_config.formats`                    | `["srt", "vtt"]`   | Covers common players and platforms.        |
| `subtitles_config.maximum_characters_per_row` | `42`               | Standard broadcast readability limit.       |
| `subtitles_config.maximum_rows_per_caption`   | `2`                | Keeps captions compact on screen.           |
| `subtitles_config.style`                      | `"compliance"`     | Stricter rules for broadcast/accessibility. |
| `translation`                                 | `true` (if needed) | Generates subtitles per target language.    |

<Tip>
  For live captions streamed in real time, use the
  [Realtime API](/chapters/live-stt/quickstart) instead — see
  [Live recommended parameters](/chapters/live-stt/recommended-parameters#subtitles--captioning).
</Tip>

## Multilingual Content

Optimize for **mixed-language audio**.

| Parameter                        | Recommended value                                      | Why                                          |
| -------------------------------- | ------------------------------------------------------ | -------------------------------------------- |
| `language_config.languages`      | List of expected languages (e.g. `["en", "fr", "de"]`) | Constrain to 3–5 languages for accuracy.     |
| `language_config.code_switching` | `true`                                                 | Detects language shifts across utterances.   |
| `custom_vocabulary`              | `true`                                                 | Add terms per language with `language` tags. |

<Tip>
  Do not enable `code_switching` with an empty `languages` list — the detector
  would evaluate against 100+ languages and misdetect frequently.
</Tip>

## Language Configuration

One of the most common configuration mistakes is misunderstanding how `language_config` works. Choosing the right setup avoids unnecessary detection overhead and improves accuracy.

**When to set an explicit language:**

* You **know** the language of the audio ahead of time.
* The audio is **monolingual** (single language throughout).
* You want the **fastest, most accurate** results.

```json theme={null} theme={"system"}
{
  "language_config": {
    "languages": ["en"],
    "code_switching": false
  }
}
```

**When to use auto-detection:**

* You process audio in **many different languages** and don't know which one beforehand.
* You want Gladia to pick the language automatically.

```json theme={null} theme={"system"}
{
  "language_config": {
    "languages": [],
    "code_switching": false
  }
}
```

<Warning>
  When `code_switching` is `false` and no language is set, the language is
  detected on the **first utterance** and reused for the rest of the session or
  file. If the beginning of your audio contains silence, music, or a different
  language than the main content, this can lead to incorrect detection for the
  whole transcription.
</Warning>

<Tip>
  Even when using auto-detection, pass a **small list of likely languages** in
  `languages` to constrain the search. This improves both accuracy and
  processing time.
</Tip>

## Code Switching

Code switching (`language_config.code_switching: true`) lets Gladia detect and transcribe **multiple languages** within the same audio, re-evaluating the language on each utterance.

**When to enable it:**

* Speakers **switch languages** mid-conversation (e.g. bilingual meetings, multilingual customer support).
* You need the detected `language` returned **per utterance**.

**When NOT to enable it:**

* The audio is in a **single language** — code switching adds unnecessary processing and can introduce misdetections.
* You've set **exactly one language** in `languages` — in that case `code_switching` is ignored anyway.

```json theme={null} theme={"system"}
{
  "language_config": {
    "languages": ["en", "fr", "es"],
    "code_switching": true
  }
}
```

<Warning>
  **Do not enable `code_switching` with an empty `languages` list.** When no
  languages are specified, the language detector evaluates every utterance
  against 100+ supported languages, which leads to frequent misdetections —
  especially between similar-sounding languages. Always provide a short list of
  languages you **actually expect** in the audio.
</Warning>

## Custom Vocabulary

[Custom vocabulary](/chapters/audio-intelligence/custom-vocabulary) is a post-transcription replacement based on **phoneme similarity**. It's essential for domain-specific terms that speech models frequently mis-transcribe.

**Best practices:**

* **Always provide both** the `custom_vocabulary` flag and a `custom_vocabulary_config`.
* **Add pronunciations** to provide all the close spelling variants. You can use Automatic Phonemic Transcriber (IPA) in order to check if all the different spellings are covered.
* **Keep `intensity` moderate** (0.4-0.6). High values increase false positives where unrelated words get replaced.
* **Set `language`** on individual vocabulary entries when your audio is multilingual and a term is pronounced differently depending on the language.

<CodeGroup>
  ```json Pre-recorded theme={null} theme={"system"}
  {
    "audio_url": "YOUR_AUDIO_URL",
    "custom_vocabulary": true,
    "custom_vocabulary_config": {
      "vocabulary": [
        "Kubernetes",
        {
          "value": "Gladia",
          "pronunciations": ["Glad", "Gladio"],
          "intensity": 0.5
        },
        {
          "value": "PostgreSQL",
          "pronunciations": ["Postgres Q L", "Post gress"],
          "intensity": 0.4
        }
      ],
      "default_intensity": 0.5
    }
  }
  ```

  ```json Live theme={null} theme={"system"}
  {
    "realtime_processing": {
      "custom_vocabulary": true,
      "custom_vocabulary_config": {
        "vocabulary": [
          "Kubernetes",
          {
          "value": "Gladia",
          "pronunciations": ["Glad", "Gladio"],          
          "intensity": 0.5
          },
          {
            "value": "PostgreSQL",
            "pronunciations": ["Postgres Q L", "Post gress"],
            "intensity": 0.4
          }
        ],
        "default_intensity": 0.5
      }
    }
  }
  ```
</CodeGroup>
