Invocation and Discovery

Our goal is to give users a natural way to invoke agents, and we provide several invocation patterns that users can use to invoke your actions.

Invocation components

To understand the possible invocation patterns, let's start by defining the possible components of an invocation command.

Trigger phrase

These phrases start an invocation and are defined by Actions on Google. They can be things like:

  • "talk to..."
  • "speak to..."
  • "At ..."

Invocation Name

This is the name of your agent, such as "Personal Chef". Users combine this with trigger phrases to invoke agents by name, such as: "Ok Google, let me talk to Personal Chef". This type of invocation is called name invocation.

Action phrase

This phrase lets users deep link into your agent by providing an action to perform, such as:

  • "find me recipes"
  • "recommend a wine"

Users combine name invocations with action phrases to invoke specific actions. For example: "Ok Google, talk to Personal Chef to find me recipes". This is called deep link invocation.

Name invocation

This pattern lets users invoke your agent by using a built-in trigger phrase with the name of your agent.

The following trigger phrases are supported by default by Actions on Google:

  • "let me talk to $name"
  • "I want to talk to $name"
  • "can I talk to $name"
  • "talk to $name"
  • "let me speak to $name"
  • "I want to speak to $name"
  • "can I speak to $name"
  • "speak to $name"
  • *"at $name"

You don't need to specify anything to support these invocations and you can expect other similar patterns to work as well including additional words or phrases. All of these patterns invoke the "main" intent and you should have one and only one main intent.

You can also let users invoke specific actions with deep links when they know what they want to do and the action phrase to say.

The usage patterns that are supported are natural variations of the following patterns:

  • Let me talk to $name about $action_phrase
  • Talk to $name about $action_phrase
  • Can I talk to $name about $action_phrase
  • I want to talk to $name about $action_phrase
  • Let me speak to $name about $action_phrase
  • Speak to $name about $action_phrase
  • Can I speak to $name about $action_phrase
  • I want to speak to $name about $action_phrase
  • At $name to $action_phrase

For example:

  • "At Personal Chef to find me chicken recipes."
  • "Speak to Personal Chef for chicken recipes."
  • "Talk to Personal Chef about chicken recipes."
  • "I want to talk to Personal Chef about steak preparation"

Users can use action phrases for discovery as well. For example, if the user asks "Ok Google, I want recipes", the Google Assistant may respond with "Ok, for that, try saying let me talk to Personal Chef".

While these hints offer a helpful discoverability tool for users, don't be overly general as these patterns are only triggered if the Google Assistant doesn’t know how to handle the user’s query. The Google Assistant will match queries similar to the ones you specify, so an exhaustive list is not recommended. Provide a few examples as hints to the Google Assistant for the kind of action phrases you support.

Of course, these action phrases are not unique to your agent and therefore the Google Assistant determines which agents to suggest for users.

Choosing a good invocation name

Your invocation name is the primary way that users trigger your agent. As such, it is extremely important that you pick a good one. If your invocation name is hard to pronounce, sounds like other words, or can not be recognized well by Google, then it is likely that users will be consistently unable to invoke your actions.

Follow the below tips to ensure that you pick a good invocation name:

Avoid words that have multiple pronunciations

This is needed so that both users and Google Assistant know how to pronounce your invocation name. For instance, it may not be a good idea to include the word "Envelope" in your invocation name, as users and Google Assistant will not know whether to say "en-vel-ope" or "ahn-vel-ope". Other examples include "tear", "bow", and "bass".

Test that Google recognizes your invocation name

  • Use the microphone input in the developer console to speak your invocation name, rather than type it. Using our speech recognizer increases the chances that your invocation name will be correctly recognized. You should also try saying it several times to make sure it's consistently recognized accurately. Speech input is currently only available in the Chrome browser.
  • Test your invocation name in the web simulator with the microphone input. Check to see if the text output matches what is listed for your invocation name.
  • Test your action on Google Home. Preview your action and try to invoke it on a Google Home.
  • Try testing with people of different genders and accents. You want to make sure that your invocation name will be recognized no matter who says it.

Choose easy but unique names

You want users to be able to effortlessly use your actions. If they have to struggle to say the name or if they can’t easily remember the name, then they are far less likely to keep using your actions.

Adhere to our invocation name policies

See the invocation naming policies for more information on guidelines and restrictions for invocaton names.

If you need an invocation name for your business that violates one of our policies or if it's not recognized well by Google, contact support to receive an exception that we evaluate on a case-by-case basis.

Registering the invocation name

Once you've chosen a good invocation name and tested it on your Google Home device or the web simulator, use the Google Developer Console to register your invocation name and action.

At this point, you can do one of the following:

  • Complete all of the registration steps.
  • Register only the invocation and display names. Then, when you're finished developing your agent, come back to your Google developer project and finish registration.