Put “how to say it in 67 languages” on your own site

A free, embeddable widget for language blogs, teachers and travel guides. Pick any of 104 everyday phrases, choose the languages you want, paste one script tag. Your readers get the written form, pronunciation and native audio without leaving your page.

Free foreverNo adsNo cookies, no trackingUnder 10 KBWorks on any site

Live demo

This is the real widget, not a screenshot. Tap a speaker.

Build your snippet

Every phrase links back to its full page on SPAIKING, so readers can hear all 67 languages.

Options

AttributeWhat it does
data-phraseThe phrase to show. Use the English phrase ("Thank you") or its slug (thank-you). Defaults to hello.
data-languagesComma-separated list of language names or codes, in the order you want them, e.g. spanish,french,ja,ar. Omit for the curated eight with a “Show all 67” button.
data-themelight (default) or dark.
data-widthOptional max width, e.g. 480 or 40rem. By default it fills its container.

You can place several widgets on one page, one script tag each. Only one audio clip plays at a time.

For teachers, bloggers and travel sites

Language teachers

Drop “Good morning” or “How are you?” into a class page or LMS so students can hear it and read the romanization at home. Pick just the language you teach, or show all 67 for a culture lesson.

Language and culture blogs

Writing about greetings, toasts or holiday wishes? Embed the phrase in every language instead of pasting a static table. Your post gains audio and stays accurate, and you keep readers on your page.

Travel guides and hotels

“Where is the bathroom?”, “How much is this?”, “Thank you” in the local language, with a speaker button, right in your destination guide or welcome page.

It is free, with no ads, no cookies and no tracking of your visitors. The only thing we ask is that you keep the small “Free audio by SPAIKING” credit link at the bottom of the widget. That link (tagged with utm_source=widget) is how we know the widget is useful and why it stays free.

How it works

The script renders the widget in place using a Shadow DOM, so your CSS cannot break it and its CSS cannot touch your page. It fetches one small JSON file for the phrase from spaiking.com/say/data/ and streams audio from spaiking.com/say/audio/ only when someone presses play. There are no dependencies, no jQuery, no frameworks, and it never throws errors into your page: if the network fails, it shows a one-line message with a link instead.

<script src="https://spaiking.com/widget/say.js"
  data-phrase="thank-you"
  data-languages="spanish,french,japanese,arabic"
  data-theme="light" async></script>

Developers: the same data is available as plain JSON at https://spaiking.com/say/data/index.json and https://spaiking.com/say/data/{slug}.json, served with CORS enabled, if you would rather build your own display. The same credit link is appreciated.

Frequently asked

Where do the translations and audio come from?

Every phrase was translated and reviewed by the SPAIKING language team, with a native or advanced speaker checking the natural, everyday form for each language. The audio is the same spoken audio used on the SPAIKING phrase pages. Nothing is machine-generated on the fly when someone loads your page; the widget reads a fixed, checked file for the phrase you pick.

Can I pick which languages appear?

Yes. Add data-languages with a comma-separated list, for example data-languages="spanish,french,japanese". Use language names or two-letter codes. Leave it out and the widget shows a curated set of eight with a "Show all 67 languages" button.

Can I remove the SPAIKING credit link?

Please keep it. The credit is the only thing we ask for in return, and it is what lets us keep the widget, the data and the audio free with no ads and no tracking. If the link is a problem for your site, write to us and we will talk, but the honest answer is that the credit is how this stays free.

Does it slow down my page or track my visitors?

The script is under 10 KB, loads asynchronously and fetches one small JSON file. It sets no cookies, loads no analytics and sends nothing about your visitors anywhere. The only thing we can see is a normal server log for the file requests, plus the utm tag on the credit link when someone clicks it.

Will it break my site's styling, or will my CSS break it?

No. The widget renders inside a Shadow DOM, so your stylesheet cannot reach into it and its styles cannot leak out. It only takes the width of its container and adapts down to phone screens.

Can I put more than one on a page?

Yes. Add one script tag per phrase, anywhere on the page. Each renders in place, and only one audio clip plays at a time across all of them.

Which phrases are available?

Any of the 104 phrases on the SPAIKING phrase pages, from "Hello" and "Thank you" to "Where is the bathroom?" and "Will you marry me?". Pick one in the configurator above. Use the English phrase or its URL slug in data-phrase.

Can I use it in a WordPress, Squarespace, Wix or Ghost site?

Yes, anywhere you can paste a snippet of HTML. In WordPress use a Custom HTML block; in Squarespace a Code block; in Wix an Embed HTML element; in Ghost an HTML card. Notion does not run third-party scripts, so link to the phrase page instead.

Want your readers to actually say it?
SPAIKING listens to their pronunciation and coaches them like a real tutor, in 60+ languages.
Try SPAIKING free