AI-powered · 7 languages · One endpoint

Pronunciation assessment API for language learning apps

Send a short recording and the sentence the learner was asked to read. TonePerfect returns a 0–100 score for the sentence, every word and every sound — including Mandarin tones — in one JSON response.

  • Sentence, word & sound scores
  • From $10/month
  • Audio never stored

By the team behind the TonePerfect app, used by 30,000+ Mandarin learners.

POST /v1/assesszh-CN · 2.4 s audio · 1 credit
94hǎo93shì68jiè92
86
Overallout of 100
Pronunciation90
Initials91
Finals89
Tones80
Syllable detailshì
PartExpectedHeardScore
Initialshs78Uncertain
Finalii83OK
ToneTone 4Tone 262Review

Tone 4 was heard as tone 2 — the kind of slip a Mandarin learner needs pointed out.

Illustrative example · scores are representativeFull JSON reference ↗
Languages available today
Mandarin ChineseEnglishFrenchSpanishGermanItalianPortugueseLive status ↗
How it works

One request in.
Actionable feedback out.

No speech pipeline to build. Your app records, TonePerfect listens, and you decide what to show.

  1. 1

    Learner reads a sentence

    Any sentence you choose, in Mandarin Chinese, English, French, Spanish, German, Italian and Portuguese. Up to 30 seconds of audio from a browser, phone or desktop app.

  2. 2

    Send audio, text and language

    One multipart/form-data request to POST /v1/assess with your secret key. Add an Idempotency-Key to retry safely.

  3. 3

    Show the feedback

    Colour the words, highlight the sound to fix, play back the exact segment. Every number you need is in the same JSON.

Your first requestcURL
curl https://api.toneperfect.app/v1/assess \
  -H "Authorization: Bearer $TONEPERFECT_API_KEY" \
  -H "Idempotency-Key: lesson-42-attempt-1" \
  -F "audio=@hello.wav" \
  -F "text=你好" \
  -F "language=zh-CN"
What you get back

From the whole sentence
to a single sound.

Three levels of detail, already linked, so a learner can go from “86/100” to “your 4th tone came out as a 2nd” in one tap.

01 / Sentence

Overall score

A 0–100 grade for the recording plus the dimensions the language supports: pronunciation, completeness, fluency, rhythm — or initials, finals and tones for Mandarin.

scores.overall · scores.tone
02 / Word

Every word, timed

Each word or Mandarin character with its own score and start/end milliseconds, so you can highlight it and replay it.

words[].score · start_ms · end_ms
03 / Sound

Expected vs heard

For every phoneme — or Mandarin initial, final and tone — the expected sound, the sound we estimate was said, and a score. Decisions on whether to correct come per word, and per component for Mandarin.

words[].phones[] · heard · decision
Why TonePerfect

Built by people who
ship pronunciation feedback.

Everything we needed for our own learning app, exposed as an API.

Three levels in one call

Sentence, word and sound scores come back together, already linked. No second request, no stitching.

Mandarin tones, properly

Every syllable is scored on its initial, final and tone separately. Third-tone sandhi is taken into account, so a correctly applied 2-3 is not marked as an error.

Knows when to stay quiet

Every word — and every Mandarin initial, final and tone — carries a decision: review, uncertain or no correction. Designed to keep unnecessary corrections rare.

Timestamps for every word

start_ms and end_ms on every word let you play back the exact segment a learner needs to hear again.

Audio is never stored

Recordings are assessed and deleted. Nothing is retained or used for training. Results expire within 24 hours.

Safe retries, fair billing

Send an Idempotency-Key and retry freely. Failed or unassessable requests cost nothing.

Who it is for

Any product where
people practise speaking.

Language learning apps

Score every speaking exercise and show learners exactly which word or sound to fix — in the same request.

Online tutoring & classrooms

Give tutors objective, per-sound evidence and let students practise between lessons with instant feedback.

Kids’ reading practice

Turn read-aloud sessions into word-level feedback with timestamps, so children can replay and retry the exact word.

Business & exam prep

Add speaking practice to corporate training or test-prep products without building a speech team.

7 languages

One integration.
The same JSON everywhere.

Every language returns sentence, word and sound scores. Some add fluency and rhythm; Mandarin adds tones. Coverage and limits ↗

More languages are added as their native-speaker calibration is complete. Need one that is not listed? Tell us ↗

Pricing

Simple monthly plans.
Pay per assessment.

One credit scores a recording up to 15 seconds; two credits up to 30. Failed or unassessable requests are free.

Starter

$10/ month

2,500 credits every month

  • All 7 languages
  • Unused credits roll over
  • Add extra credits anytime
  • API keys, playground & usage
Choose Starter

Scale

$150/ month

50,000 credits every month

  • All 7 languages
  • Unused credits roll over
  • 20% off extra credit packs
  • API keys, playground & usage
Choose Scale

Credits arrive after each payment and roll over while you subscribe. Extra packs available anytime. Cancel whenever you like. Full pricing details ↗

FAQ

Questions developers ask first.

Something else? nik@toneperfect.app

Read more: What is a pronunciation assessment API? · Integration tutorial · Tone sandhi in scoring

What is a pronunciation assessment API?

A pronunciation assessment API takes a recording of someone reading a known sentence and returns scores that describe how close the speech is to a native speaker. TonePerfect returns a 0–100 score for the whole recording, for every word and for every sound, plus timestamps and an explicit recommendation on whether each sound needs correction.

Which languages does TonePerfect support?

7 languages today: Mandarin Chinese, English, French, Spanish, German, Italian, Portuguese. Every language returns sentence, word and sound scores. Mandarin additionally scores the initial, final and tone of every syllable; English and French add fluency and rhythm. Call GET /v1/capabilities for the live list.

How is Mandarin Chinese scored?

Each syllable is split into its initial, final and tone, and each part gets its own score and heard value, so your app can say “this was a 2nd tone, not a 4th” rather than “try again”. Send Chinese characters or numbered pinyin. Tone sandhi is taken into account, so a 3rd tone that correctly surfaces as a 2nd tone before another 3rd tone is not marked as an error.

How accurate is the scoring?

Scores are calibrated per language against native-speaker recordings, and every sound carries a feedback decision — review, uncertain or no correction — so you can choose to only surface the errors the model is confident about. Language packs are labelled experimental where calibration data is still small; the capabilities endpoint states each pack’s limits honestly.

What audio can I send?

A recording of up to 30 seconds (10 MB) of someone reading the text you supply: WAV, MP3, M4A, OGG or WebM from a browser, phone or desktop app. The API assesses scripted speech; it is not a general speech-to-text or grammar service.

Is learner audio stored or used for training?

No. Audio is decoded, assessed and deleted. It is never retained or used to train models. The JSON result is kept for up to 24 hours only so a retried request with the same Idempotency-Key returns the same answer.

How does pricing work?

Plans start at $10/month for 2,500 credits. One credit covers a recording up to 15 seconds; two credits cover up to 30 seconds. Failed or unassessable requests are free. Unused credits roll over, and you can add one-off credit packs at any time — 10% cheaper on Builder and 20% cheaper on Scale.

Can I try it before subscribing?

You can create an account, generate a key, browse the documentation and explore example responses without paying. Live assessments need an active plan — new accounts start with zero credits and there is no free tier.

Add pronunciation feedback this week.

Create an account, generate a key, send your first recording.

Get your API key