For AI agents: a documentation index is available at /llms.txt. Markdown versions of all pages can be requested by appending `.md` to the URL, or by setting the `Accept` header to `text/markdown`.
Skip to main content
Speech to TextFeatures

Disfluency and profanity tagging

Speechmatics tags hesitation sounds and profanity in the transcript so you can display, filter, or remove them. Both appear in the tags array on the word in the transcript output.

Availability

Disfluency tagging and profanity tagging are available with the Standard and Enhanced models, for pre-recorded and streaming transcription. See Feature availability.

Language coverage differs between the two features and is listed in each section below.

Profanities

You can tag profanities to identify or censor offensive language in your workflow. Profanity tagging is available for:

  • English (en)
  • Italian (it)
  • Spanish (es)

Tagged profanities appear in the transcript with the profanity tag:

"results": [
{
"alternatives": [
{
"confidence": 1.0,
"content": "$PROFANITY",
"language": "en",
"tags": [
"profanity"
]
}
],
"end_time": 18.03,
"start_time": 17.61,
"type": "word"
}
]

For other languages, consider using text replacement to identify profanities.

Disfluencies

Disfluencies are hesitation sounds like "um", "uh", and "hmm". Speechmatics automatically tags them with disfluency in the transcript output:

"results": [
{
"alternatives": [
{
"confidence": 1.0,
"content": "hmm",
"language": "en",
"tags": [
"disfluency"
]
}
],
"end_time": 18.03,
"start_time": 17.61,
"type": "word"
}
]
Full list of tagged English disfluencies
huh
aha
ah
aw
eh
err
hmm
mm
um
uh
uh-oh
uh-huh
uh-uh
mhm
a-ha
aah
aahh
aaw
ah-ha
ahaa
ahh
ahha
aww
eeh
erm
hhm
hhmm
hm
huh-uh
m-hm
uggh
ugh
ughh
uhh
uhhm
uhm
uhmm
umm
uuh
uuhh
uum

Supported languages for disfluencies

Disfluency tagging and removal are available for the following languages. Each language has its own set of hesitation sounds; the expandable list above covers English.

  • Arabic (ar)
  • Danish (da)
  • Dutch (nl)
  • English (en)
  • French (fr)
  • German (de)
  • Greek (el)
  • Hebrew (he)
  • Hindi (hi)
  • Hungarian (hu)
  • Italian (it)
  • Japanese (ja)
  • Mandarin (cmn)
  • Polish (pl)
  • Portuguese (pt)
  • Russian (ru)
  • Spanish (es)

Coverage of hesitation sounds varies by language. If you rely on disfluency removal for a specific language, test it with representative audio rather than assuming full coverage.

Removing disfluencies

You can automatically remove disfluencies from your transcript:

"transcription_config": {
"model": "enhanced",
"language": "en",
"transcript_filtering_config": {
"remove_disfluencies": true
}
}

This simplifies client-side processing by removing hesitation sounds and properly adjusting capitalization and spacing. For example:

Without disfluency removal:

Um, what would you like, hmm?

With disfluency removal:

What would you like?

This feature is available for the supported languages. The default setting is "remove_disfluencies": false.