5 features you should be using to increase your Alexa Skill’s engagement

Jamie Grossman Oct 18, 2023
Alexa Skills

The Alexa Skills Kit (ASK) is full of rich and useful features that developers can use to help with the discovery of their experiences as well as help to deliver rich and engaging experiences for customers. In this article, we provide a quick overview of five key features to help you get the most out of your Skill development experience. 



1. Alexa Presentation Language (APL)

With Alexa Presentation Language (APL), you can create visually engaging and interactive voice experiences by integrating voice, visuals, and touch interactions seamlessly. From lists to video support to pages, APL gives developers as much flexibility as needed to create exactly what they want to for their customers. Through APL, you can enhance user engagement, provide a more intuitive user interface, and deliver rich multimedia content to ensure users keep coming back for more.



Of course, you want to ensure your voice-first experience is as engaging as possible, but the voice-only experience is only one part of your skill! For customers that launch your experience on Alexa-enabled devices with a screen such as the Echo Show or Fire TV, you should ideally design a complimentary visual experience that really delights customers.

For more information on APL, see here.


2. APL Widgets

APL Widgets are a great mechanism that can help with discovery of your experiences. Maybe your skill has useful daily information? Or you have a game with daily exciting content? Give customers a slice of the action via your widget to keep them engaged and another reason to use your full experience.

But what are widgets? Launched alongside the Echo Show 15 (with Echo Show 8 and Echo Show 10 support too), widgets can display glanceable information to customers that allow them to perform quick actions without needing to launch the full experience. To keep things fresh, your skill can also keep the widget relevant and up-to-date (ie. local train times, stock values). But how does a customer even install your widget? They go to the widget gallery of course and pin them to their home screen!

As the owner of the widget, developers have full control over the experience. Once you’ve set up your widget including all of the parts of a widget and certified your skill, your skill handles requests for when a user installs your widget (initialisation), when they interact with it, updating the widget, and when a customer uninstalls it (cleaning up resources). One of the most important parts of a widget is the data store; the widget displays information based on the data store and your skill updates the data store, so they all work together as a team to help keep the widget useful! Best of all, if you’re already familiar with Alexa Presentation Language (APL), then you’re already half way there and should be able to develop your widget in no time using the Developer Console authoring tool or just coding it the old fashioned way. With that in mind, there are a few limitations you should be aware of such as no speech or video.

If you’re new to APL as well, we have a range of templates that you can use instead to get started.

Copied to clipboard
    "document": {
        "type": "APL",
        "version": "2022.2",
        "extensions": [
                "name": "DataStore",
                "uri": "alexaext:datastore:10"
        "settings": {
            "DataStore": {
                "dataBindings": [
                        "namespace": "Widget",
                        "key": "WidgetKey",
                        "dataBindingName": "WidgetDataStoreData",
                        "dataType": "object"
        "import": [
                "name": "alexa-layouts",
                "version": "1.6.0"
        "mainTemplate": {
            "parameters": [
            "items": {
                "type": "Container",
                "width": "100vw",
                "height": "100vh",
                "id": "rootContainer",
                "direction": "row",
                "item": [
                        "type": "Frame",
                        "backgroundColor": "${WidgetDataStoreData.frameColor ? WidgetDataStoreData.frameColor : WidgetDefaultData.frameColor}",
                        "position": "absolute",
                        "width": "100vw",
                        "height": "100vh"
                        "type": "Container",
                        "width": "100vw",
                        "height": "100vh",
                        "items": [
                                "text": "${WidgetDataStoreData.text ? WidgetDataStoreData.text : WidgetDefaultData.text}",
                                "textAlign": "center",
                                "textAlignVertical": "center",
                                "type": "Text",
                                "width": "100%",
                                "height": "100%"
    "datasources": {
        "WidgetDefaultData": {
            "frameColor": "green",
            "text": "Hello from datasources"


Check out our widget gallery where you will see all types of widgets; all the way from weather to games! For more information, check out our introduction to widgets and the API reference here.

3. Voice-Forward Account Linking

Account linking in Alexa skills allows customers to link their accounts, so the skill can access user information or use your service to complete the request. Though relatively straightforward, this requires the customer to manually open the Alexa App and complete the account linking process, but with Voice-Forward Account Linking, this is a thing of the past!

If your service uses Login With Amazon (LWA) to authenticate customers, you can use Voice-Forward Account Linking to speed up the whole process and handle it via voice. Instead of needing to log in and authenticate, customers just need to read out a short code (for verification) to the skill and before you know it, the customer is now account linked! In fact, they don’t even need the Alexa App installed.

You can find more information on implementation here, but your skill chooses when to send out the account linking request and then handles the response gracefully (ie. if customer linked or not). As you can see below, we first check to see if thee customer is account linked or not. If they aren’t, we kick off the process to account link the customer using Voice-Forward Account Linking.

Copied to clipboard
var accessToken = handlerInput.requestEnvelope.context.System.user.accessToken;
    if (accessToken == undefined){
       //Account is not linked
        return handlerInput.responseBuilder
            'type': 'Connections.StartConnection',
            'uri': 'connection://AMAZON.AskForAccountLinking/1',
            'onCompletion': 'RESUME_SESSION',
            'input': {
            '@version': '1',
            '@type': 'AskForAccountLinking'
            'token': 'accountLinking'
            // Token can be anything that can be used to identify the request on session resumption


4. A/B Testing

This is a great tool for those that want to experiment with their skill to ensure users are getting the best experience possible. The AB Testing tool can be used to compare two versions of your Alexa skill to determine which one performs better. Maybe you want to see which visuals better resonate with users and leads to more positive skill ratings? Or perhaps you want to check which upsell prompt leads to increased ISP and a better conversion rate? You deploy multiple versions of your skill and can then collect data on the different groups of users to evaluate the skills performance and make more informed decisions on the future of the skill.

And don’t forget - this isn’t a one and done deal. Developers should be continuously refining and adapting to meet evolving user expectations. Though this iterative approach, you’ll find AB testing is extremely powerful in creating rich and engaging experiences for customers.

For more information on AB Testing, see here.

5. Alexa Routines Kit [Developer Preview]

So Alexa Skills can make life easier for customers, but how can we make life even easier for customers to use those skills? They have to remember the skill’s invocation name for one thing, and just like what you had for dinner last night, things can be easy to forget! This is where contextual habits come in via the Alexa Routines Kit (ARK).

But before we get into that, what is an Alexa Routine? A Routine is a way for customers to automate certain behaviours via the Alexa App. Maybe they want to be woken up to the news at 9am? Or they want all of their lights to turn off at midnight? Maybe they want to open an Alexa skill, but with their own preferred utterance? Routines can be convenient for customers by giving them what they need, when they need it and how they want it.

ARK relies on custom tasks which you may already be familiar with if you’ve used skill connections. They are essentially specific tasks that your actions your skill can handle, and once you integrate them with ARK, the Routine relies on your custom task to do the action required by the customer.

Developers can offer pre-built routines to customers when relevant, so customers do not have to configure routines themselves. If a customer is opening your skill every evening at 6PM after work during the week, offer them a routine to launch the skill automatically. Or perhaps they want to be awoken at sunrise and why not wake them up with a challenging quiz? You can make your skill so much more accessible for customers with the Alexa Routines Kit.

Learn more in the documentation here, and if this sounds interesting to you, let us know and sign up to use Alexa Routines Kit via the developer preview!

Recommended Reading

New developer tools to build LLM-powered experiences with Alexa
How to easily get started with WebRTC
Earn money with an Alexa Skill