SpeechRecognitionEvent: emma property

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

The emma read-only property of the SpeechRecognitionEvent interface returns an Extensible MultiModal Annotation markup language (EMMA) — XML — representation of the result.

Note: EMMA is defined in the specification EMMA: Extensible MultiModal Annotation markup language. You can see multiple EMMA examples in the spec.


A valid XML document. The exact contents can vary across user agents and recognition engines, but all supporting implementations will expose a valid XML document complete with an EMMA namespace. If the speech recognition system does not supply EMMA data then the user agent will return null.


recognition.onresult = (event) => {
  const color = event.results[0][0].transcript;
  diagnostic.textContent = `Result received: ${color}.`;
  bg.style.backgroundColor = color;

Browser compatibility

BCD tables only load in the browser

See also