Google Cloud Text-to-Speech produces some of the most natural AI voices available — its WaveNet and Neural2 voices sound far closer to a human than the free browser voices most WordPress plugins use by default. The catch is that, unlike a one-click install, it takes a few steps in the Google Cloud console to get your credentials. This guide walks through the whole thing, start to finish, and connects it to your WordPress site.
We’ll use AtlasVoice Pro as the example plugin (it supports Google Cloud TTS natively), but the Google-side steps are identical no matter which tool you connect it to. Budget about 15 minutes.
What you’ll need before you start
- A Google account (the same one you use for Gmail is fine).
- A credit or debit card. Google requires a billing account even to use the free tier — you won’t be charged unless you exceed the free limits, but a card must be on file.
- A WordPress text-to-speech plugin that supports Google Cloud, such as AtlasVoice Pro.
Is Google Cloud Text-to-Speech free?
Mostly, for typical WordPress use. Google gives you a recurring monthly free allowance — at the time of writing, up to 1 million characters of premium WaveNet/Neural2 voices and up to 4 million standard characters per month. Beyond that you pay per character. For a normal blog, that free tier covers a lot of “listen to this article” audio. Always check Google’s current pricing page, since free-tier limits change.
Step 1: Create a Google Cloud project
- Go to the Google Cloud Console and sign in.
- Click the project dropdown at the top, then New Project.
- Give it a name like WordPress TTS and click Create. Make sure this new project is selected before continuing.
Step 2: Enable the Cloud Text-to-Speech API
In the console search bar, type “Text-to-Speech API” and open it, then click Enable. The API has to be switched on for your project before any credentials will work — skipping this is the #1 reason setups fail.
Step 3: Set up billing (required even for the free tier)
Go to Billing in the left menu and link a billing account (add your card). Again: you’re not opting into charges — you’re just satisfying Google’s requirement that a payment method exists. As long as you stay under the monthly free allowance, your bill stays at $0. If you want a hard safety net, set a budget alert under Billing → Budgets & alerts.
Step 4: Create a service account and download the key
WordPress connects to Google Cloud using a service account — a machine identity with its own JSON key file. Here’s how to create one:
- Go to IAM & Admin → Service Accounts and click Create Service Account.
- Name it (e.g., wordpress-tts) and click Create and continue.
- Grant it a role that can use Text-to-Speech — Cloud Text-to-Speech API User is the least-privilege option (or Editor if you want to keep it simple). Click Done.
- Open the new service account, go to the Keys tab → Add Key → Create new key → JSON. A
.jsonfile downloads to your computer. Keep it private — anyone with this file can use your Google Cloud quota.
Step 5: Connect the key to WordPress
Now hand that JSON key to your plugin. In AtlasVoice Pro, open the plugin’s voice-provider settings, choose Google Cloud, and upload the service-account JSON file you just downloaded. The plugin reads the credentials, authenticates with Google, and unlocks the Google voices. (Other plugins follow the same idea — they either accept the JSON file or its contents.) For the exact plugin screens, see our Google Cloud TTS integration guide in the docs.
Step 6: Pick a voice and test
Once connected, choose a Google voice — look for Neural2 or WaveNet names for the most natural output, and pick your language/accent. Generate a short preview, open a published post, and press play. You should now hear a markedly more human voice than the default browser one. If you want MP3 downloads of that audio, AtlasVoice Pro can save the generated files too.
Troubleshooting common errors
- “API not enabled” / 403 SERVICE_DISABLED: you skipped Step 2 — enable the Text-to-Speech API for the correct project.
- “Billing has not been enabled”: link a billing account (Step 3), even though you’re on the free tier.
- “Permission denied” / 401: the service account is missing a Text-to-Speech role, or you uploaded a key from a different project. Re-check Step 4.
- “Invalid JSON” on upload: make sure you uploaded the whole
.jsonkey file unedited — not a copy that got truncated.
Frequently asked questions
No. Everything above is point-and-click in the Google Cloud console plus one file upload in WordPress. You never touch code.
Only if you exceed the monthly free allowance. A typical blog reading its own posts aloud rarely comes close. Set a budget alert in Billing if you want to be certain.
They each have strengths. Google Cloud is fast, multilingual, and generous on the free tier; ElevenLabs leans most expressive; OpenAI is simple to wire up. We compare them in depth in Google Cloud TTS vs OpenAI vs ElevenLabs.
Yes — browser-based voices work with no API setup at all (just lower quality). See our roundup of the best free text-to-speech tools in 2026 for the no-credentials options.
That’s it — natural AI voices on your WordPress site
Once the service-account key is connected, every post can be read aloud in a near-human Google voice, and you stay within a free allowance that’s generous for most sites. New to adding audio in the first place? Start with our guide on how to add text-to-speech to your website, then come back here to upgrade the voice quality. When you’re ready, AtlasVoice Pro ties Google Cloud (and three other AI providers) into WordPress with MP3 downloads built in.
🔊 Stay Updated with AtlasVoice
Get the latest tips on text-to-speech, accessibility, and WordPress delivered to your inbox.
No spam. Unsubscribe anytime.