Tips to Maintain Positive Customer Experience in Live Skills

Harshit Chachra Dec 31, 2020
Tips & Tools Optimize

Congratulations on successfully publishing your skill on the Alexa skill store. However, your job isn't done yet! In fact, it's just begun, as the price of a good customer experience is eternal vigilance. Once your skill starts attracting global customers with increasing skill engagement, as a skill developer you'll want to make sure that your skill is up-to-date and functioning as expected to provide the best skill experience. One way to do this is by continuously monitoring your skill's activity and engagement from the Analytics page of the developer console, which empowers you to stay informed on the unexpected errors that may arise within your skill. Monitoring your skill metrics regularly helps you to identify the cause of many errors and address those issues quickly.

Checklist for monitoring live skills
Below is a checklist of 6 functional areas we recommend you monitor continuously to maintain a high quality skill experience. Let’s go through them in detail:

1. Ensure all example and launch phrases are working without issues:

These example phrases are visible to customers on the skill description page under the “Try Saying” section. Customers are likely to try these phrases when interacting with your skill. Ensuring that all the example phrases work as expected and provide an error-free response is a must in order to give a positive initial skill experience.

To check if your example and launch phrases are recognized and working correctly and reaching the intended skill, validate the response in the utterance history of your Alexa app.

To check the utterances in the History page of the Alexa web app:

Next, validate that example phrases or launch phrases match the following format: “This request was sent to <skill name>.”

Alexa App History

If the skill does not launch correctly, you will see in the above option whether the request successfully went to your skill or the skill returned a non-contextualized response or error, and does not reflect the correct skill name. This will help you understand what caused the problem. See Functional testing for a Custom Skill – Example phrases for more details.

2. Check if the skill plays any included audio file or stream without issues:

If your skill provides an audio or sound experience, ensure that the user’s request plays the audio without any delay, error or audio breaks. Try to invoke an intent that streams the audio and listen to it for several minutes. Follow the below audio stream requirements to give a good and consistent user experience:

Audio stream requirements

The URL provided in the property must meet these requirements:

  • Audio file must be hosted at an Internet-accessible HTTPS endpoint on port 443.
  • The web server must present a valid and trusted SSL certificate. Self-signed certificates are not allowed. Many content hosting services provide this. For example, you could host your files at a service such as Amazon Simple Storage Service (Amazon S3) (an Amazon Web Services offering).
  • If the stream is a playlist container that references additional streams, each stream within the playlist must also be hosted at an Internet-accessible HTTPS endpoint on port 443 with a valid and trusted SSL certificate.

The supported formats for an audio file include AAC/MP4, MP3, PLS, M3U/M3U8, and HLS. Bitrates: 16kbps to 384 kbps.

Test your skill using the Alexa test simulator, any available Echo devices and the Alexa app to ensure the audio is working as expected across different device types. Check out the AudioPlayer Interface Reference for more details and guidance. 

3. Test if custom and built-in intents are providing relevant and error free response:

  • Vocalized Example utterances

Ensure all the vocalized example phrases return relevant skill responses and are free of errors. If the responses are irrelevant and not what is expected by the customer, this will lead to a poor customer experience.

  • Intent Response

Test all relevant Intents to make sure the response to user requests are error free, understandable and clear. This requires carefully testing complete skill functionality and validating all user requests and sample utterances that cutsomers are likely to use. If your skill contains a special character or symbol in certain languages, the skill may not respond correctly and you must remove these special characters and symbols. Instead, spell the special characters out in plain language in the sample utterance.

  • Welcome prompt

The skill’s welcome prompt is the customer’s first impression. It tells them what to expect and educates them about the skill. The welcome prompt must briefly describe the skill’s functionality, including a quick guide on how to navigate further in the skill. Below is an example of a good welcome message:

Customer: Alexa, open Space Facts.
Alexa: Welcome to the Space Facts skill. Are you curious to know mind-blowing facts about space and universe? You can ask for ‘help’ any time for assistance. This skill gives you space facts at random. You can say ‘tell me a space fact’. What would you like to do?

For detailed reference, see Best Practices for the Welcome Experience and Prompting in Alexa Skills

  • Cancel/Stop Intent

Invoking the cancel and stop intent should make sure that the skill session exits without any issues or error. For a personalized skill experience, skills often use a confirmation following the StopIntent, or it may provide a quick message before exiting the session.

User: Alexa, Open Tide Pooler.
Tide Pooler: Welcome to Tide Pooler. Which city would you like tide information for?
User: Never mind. (Sends an IntentRequest with an AMAZON.CancelIntent)
Tide Pooler: Good-bye. (Response closes the session by setting the shouldEndSession flag to true)
(Skill exits).

  • Help Prompt

In order to maintain a positive skill experience, it’s important that your Alexa skill responds correctly to the help prompt. Help prompts should return a response that instructs users on how to navigate further into the skill’s core functionality, and they should keep the session open for a customer’s reply.

The help prompt can end with a question or statement prompting user to respond in an open session and is relevant to the skills’ functionality.

User: Alexa, open kids quiz.
Skill: Welcome to Kids Quiz, the fun daily quiz game for kids! You can ask me to repeat a question or for help any time. Would you like to select a topic?
User: Help
Skill: Here is some help. Each day I will ask you three questions for a topic that you choose. Answer them correctly and earn stars. If you are stuck or need to hear the question again, just say repeat the question. In addition, you can change the difficulty of the questions by saying "change levels." Which level would you like?

Refer to Implement Built-In intents for detailed information and guidance. 

4. Launch your skill to check if it reaches the endpoint and does not respond with an error message or blank audio:

Some simple skill validations you can do on your end is to check if the launch phrases (using “Launch”, “Open”, or “Start”) are reaching your skill's endpoint correctly. If the skill responds with one of the below statements, it indicates a potential issue with the endpoint:

  • "There was a problem with the requested skill's response."
  • "Skill took too long to respond."
  • "There was a problem communicating with the requested skill."
  • "I am having problem in accessing your skill right now."
  • "The requested skill did not provide a valid response."
  • "I am unable to reach the requested skill."

Learn how to fix these issues here: 5 Common error messages for custom Alexa skills and how to troubleshoot them

5. Revise skill metadata and validate if the customer facing information contains relevant skill features and instructions:

Customer facing information, such as descriptions, example phrases, home cards, and skill prompts, help guide the user through the skill’s functionality and must always be coherent. Below are some quick tips that can make the skill experience better:

1. Always read your text a few times before submitting it. Make sure that all sentences are complete, meaningful and free of any grammatical errors or typos.

2. A skill description works as a manual for the customer, helping them understand what functions and tasks it can perform. As such, the skill's functionality and features need to be clearly communicated in the description. Briefly outline and define your skill so that it is easy for the customer to understand and know what to expect from the interaction.

  • For Smart home skills, the skill description must clearly define all features your skill can perform.
  • For Flash briefing skills, ensure that the skill feed is not older than 7 days. Update the skill feed regularly in order to maintain high-quality content for Alexa customers.

For detailed guidance and help on writing skill metadata and customer facing information, see 8 Tips for Effective Skill Description And Metadata Writing.

6. Test the skill for successful account linking through the Alexa app:

If your skill supports account linking, you must ensure that the Link Account option navigates to a browser tab and opens the account linking page. The account linking page should not show any of the following errors: “Error 404” OR “Blank page” OR “The server is not responding.“ Test and validate the account linking using a test account or an existing account or by creating a new account (if the skill requires one).

Once you have successfully completed account linking, a confirmation page should appear on the Alexa app with the following message: "<Skill Name> has been successfully linked." Test the skill's core functionalities after account linking to ensure the skill does not throw any error messages or requests the customer to link the account again.

Additionally, our skill monitoring team reviews various aspects of published skills in the catalog, including functionality, to ensure Alexa customers have great skill experiences. If they detect an issue with your live skill, you will receive an email with details about what they observed, so be sure to keep your developer account updated with an email address that you check regularly.

Related Articles