Create a Skill and Choose the Interaction Model

You can use the Alexa developer console to create a new skill.


If you haven't already, create an Amazon developer account.

To create a new skill, you must have the following information:

  • A name that identifies the skill. After you publish the skill, this name becomes the public name that customers see in the Alexa Skills Store. You can edit this name before you publish if necessary.
  • The initial language to use. You can add support for additional languages later.
  • The interaction model that defines how users interact with your skill. For details, see About Voice Interaction Models.

After you create a skill, the specific configuration options that you provide depend on the specific model that you choose.

About interaction models

An interaction model determines:

  • The requests the skill can handle, such as, plan a trip, get a fact, turn on a light, find and play video content.
  • The words the user can say to invoke those requests:
    • "Alexa, tell plan my trip I want to go to Seattle"
    • "Alexa, ask cat facts for a fact"
    • "Alexa, turn on the living room lights"
    • "Alexa, play Manchester by the Sea"

For the custom model, you define the requests (intents) and the words (sample utterances) yourself. Your code then determines how your skill handles each intent.

For the pre-built models, the possible requests and utterances are pre-defined for you. Your code determines how your skill responds to those requests.

The following table summarizes the models that you can select in the Alexa developer console.

Model Description What you build

Create a custom voice user interface for the skill. This gives you complete control over the experience.

You build a custom voice interaction model to define the requests (intents) that your skill can handle and the words the users say to make these requests (sample utterances).

For details about skills with a custom model, see Understanding Custom Skills.

Flash Briefing

Create a skill that provides content for the user's flash briefing feed.

You provide an RSS or JSON feed with the content. Users invoke the skill by asking for their flash briefing.

For details about skills with the Flash Briefing model, see Understand the Flash Briefing Skill API.


Create a skill that gives users control of your audio streaming service.

The Alexa Music, Radio, and Podcast Skill API is a set of interfaces for selection and control of audio content streamed through an Alexa-enabled device.

For more details about skills with the music model, see Understand the Music, Radio, and Podcast Skill API.

Smart Home

Create a skill that controls smart home devices, such as cameras, lights, locks, thermostats, and smart TVs.

The model defines the supported directives and the words users say to invoke those requests ("Alexa, turn on the living room lights"). Your code determines how your skill responds to those requests.

For more details about skills with the smart home model, see Understand the Smart Home Skills.


Create a skill that lets users find and consume video content.

The model defines the supported requests (such as finding a particular program to watch) and the words the users say to invoke those requests ("Alexa, play Manchester by the Sea"). Your code determines how the skill responds to those requests.

For more details about skills with the video model, see Understand the Video Skill API.

Multiple interaction models

You can select multiple interaction models for a skill. For example, you could create a skill that uses the smart home model to respond to standard commands to turn the lights off or on, but also uses a custom model to manage a ringing doorbell.

When you configure a skill with multiple models, you must configure the settings for each model. For example, a skill that has both a custom and smart home model requires an endpoint for the custom skill service and an endpoint for the smart home service.

Create a new skill

Be sure to start the skill from the Alexa developer console.

  1. Sign in to the Alexa developer console.
  2. On the Skills tab, click Create Skill.
  3. Under Name, Locale, enter the skill name and a primary locale, and then click Next.

    • Skill name: This name is the name customers will see when you publish the skill. You can edit this name later on the Distribution page.
    • Primary locale: You can add additional languages to the skill later.
  4. Under Experience, Model, Hosting service, specify the type of experience that you want to build to get recommendations on skill models. Choose a skill model, and choose how to host your skill. Then, click Next.

    • Available models include: Custom, Connected Vehicle, Flash Briefing, Meetings, Music, Smart Home, and Video.
  5. If you chose custom skill, select a quick start template or select Start from Scratch to create a new blank skill, and then click Next.
  6. Under Review, review your selections. If you want to make a change, to make changes. click Back. Otherwise, click Create skill.

Configure your skill

After the developer console creates your new skill, you can start to configure it on the Build page. The specific information that you provide depends on the model that you selected.

For more details about each skill development phase, see the following topics:

Custom and pre-built voice interaction models:

The Alexa developer console:

Was this page helpful?

Last updated: Nov 23, 2023