Voice Search - How we built our first Google Assistant app | Articles

In this article we’ll share our journey on how we built our first Google Assistant application.We’ll also include some things we tried, so you don’t have to.

To set the scene - Our first app wasn’t built using DialogFlow technology. DialogFlow was only used during the second application. This will be tackled in a separate article. In the app we’ll be examining today we used a Google template as a basis for the application.

The basic setup

Working with the Google Assistant means working with Actions on Google. It’s a completely separate platform dedicated to the development of Google Assistant applications. A full walkthrough of the platform can be found in our previous article “A guided tour to Google Actions, Google’s Assistance app management platform”.

For our application, we used a Google’s “Trivia” template in order build the first application called “Glenn’s digital marketing quiz”. 

voice search how we built our 1st google assistant app and learning 1

Upon activating this build you’ll need to complete two steps:

  1. Pick a voice
    voice search how we built our 1st google assistant app and learning 2
  2. Create the feed
    This template is built upon a feed. The feed is actually driven by a Google Sheet and serves as a huge lookup table to match questions with replies. Google’s game is strong here as it provides you with a template that’s ready to be duplicated for your use. Just follow the steps prompted by the wizzard.
    voice search how we built our 1st google assistant app and learning 3

That’s it. You’re ready to start building your application!

Building the feed - the basics

Out-of-the-box, the feed (Google Sheet) comes with 2 tabs:

  • Questions & Answers - This is where all questions and answers are tied together together with the follow-up replies.
  • Configuration - From scratch, this sheet contains little info. Adaptation can be made however to include additional features & elements.
    voice search how we built our 1st google assistant app and learning 4

Building the feed is fairly basic. Our basic configuration is the following:

  • Questions & Answers tab
    • Column A - Contains the question
    • Column B - Contains the correct reply
    • Column C - Contains a false reply
    • Column D - Contains a false reply
    • Column E - Contains a reply follow-up. This is a line of text that’s prompted after the user replied to the question.
  • Configuration tab
    • QuestionsPerGame was set to 5. This means that a complete game lasts for 5 questions.

This completes your basic setup. Your feed should be good to go!

Building the feed - adding bells & whistles

Want to add some extra tweaks? That’s what we did as well! We have added the following elements:

  1. Categories & topics - This allows for category integration within your app. Concretely, this means that users have the choice between categories or topics of questions. Setting this up requires a dual config from both the configuration tab and the Questions & Answers tab. At the time of writing it’s possible to add up to 3 categories.
  • Add the following field to the configuration tab:
    • FirstChoice - Category/topic
    • CategoryOrTopicPrompt - Add whatever message you like. This is what your user will hear when the app launches and what will urge him to make a choice in terms of categories.
    • DifficultyOrGradeLevelSuggestionChip1 - Your first category
    • DifficultyOrGradeLevelSuggestionChip2 - Your second category
  • Add the following field to the Questions & Answers tab:
    • Add an additional column called Category/topic. In our case this would be column F. On each row (= question) map which category the question belongs to. The categories need to match the exact spelling as was used in the configuration tab under the “DifficultyOrGradeLevelSuggestionChip” variables.

An overview of the full assembly below.

voice search how we built our 1st google assistant app and learning 5
voice search how we built our 1st google assistant app and learning 6

  • Google Analytics tracking
    We tried to implement another additional layer of Analytics. Google Actions comes with its proper Analytics platform. However, we wanted to see what data a Google Analytics implementation would yield. Documentation wasn’t entirely clear on which type of tracking was required (GA for web or app). Therefore we decided to implement them both. For those wondering if it’s worth trying, we can be short. No. Google Analytics tracking embedded in a Google Action application results in totally incomprehensible data such as coded source/medium values, therefore we wouldn’t suggest doing it. Moreover, discrepancies between the Google Actions data and Google Analytics data are big. That’s why, for now, we prefer to rely on the Google Actions data as it was built with voice in mind where Google Analytics was not.

The paperwork

Last but not least, you’ll have to deal with the details. Before publishing your app you’ll need to provide Google (& its users) with a couple of details. This includes an app description, ways your app can be invoked, background images for the app store and of course a privacy policy.

Never written a privacy policy? That’s OK. Google got you covered. A template is provided that can be adapted to your app in minutes. The only thing you need to do next is to make sure the document is publicly available. Google walks you through the entire process.

voice search how we built our 1st google assistant app and learning 7

3,2,1, Liftoff!

If you’ve followed the steps mentioned above, you should have a rough outline of a functional app ready right now. All that’s left is to make it yours and publish. We can’t wait to see what you’ve built!

publication author Glenn Venderlinden
Glenn Vanderlinden

| LinkedinThis email address is being protected from spambots. You need JavaScript enabled to view it.


Get in touch

Semetis | 44 Rue des Palais, 1030 Brussels - Belgium

+32 (0)2 211 34 50


Connect with us

Cookie Policy

This website uses cookies that are necessary to its functioning and required to achieve the purposes illustrated in the privacy policy. By accepting this OR scrolling this page OR continuing to browse, you agree to our privacy policy.