New: Want to see the latest tools? Read our 2026 Developer Guides on AI Companions & Generators

Use Google Sheets as a CMS for Your Voice App

Kaan KilicΒ·Β·Updated Feb 2024Β·9 min read

Hardcoding voice responses in your handler code is fine for prototypes. But for production apps β€” especially those with multiple languages or frequently changing content β€” you need a CMS. Google Sheets is a surprisingly powerful option. With the Jovo CMS plugin, you can manage all your app's responses in a spreadsheet and have them loaded at runtime. No redeployment needed.

Why Google Sheets?

  • Free and familiar β€” everyone on your team can edit a spreadsheet
  • Multi-language ready β€” add columns for each locale (en, de, fr, ja)
  • Real-time updates β€” change a response and it's live immediately
  • No backend required β€” the Jovo plugin reads directly from the Sheets API

Step 1: Install the Plugin

$ npm install @jovotech/cms-googlesheets

Step 2: Create Your Spreadsheet

Create a Google Sheet with this structure:

keyende
welcomeWelcome! Ready to play?Willkommen! Bereit zum Spielen?
goodbyeSee you next time!Bis zum nΓ€chsten Mal!
helpYou can say yes or no.Sag ja oder nein.

Step 3: Configure the Plugin

// app.ts

import { GoogleSheetsCms } from '@jovotech/cms-googlesheets';

app.use(

new GoogleSheetsCms({

spreadsheetId: 'YOUR_SPREADSHEET_ID',

sheets: {

responses: {

range: 'responses!A:C'

}

}

})

);

Step 4: Use in Handlers

LAUNCH() {

return this.$send({

message: this.$t('welcome') // Auto-resolves to locale

});

}