A speech-to-text API built for complicated speech.

Two years in the making, trained exclusively on speech data we recorded, transcribed, and validated ourselves. It is built for the audio other engines give up on: strong accents, spontaneous conversation, crosstalk, noise, and domain vocabulary.

The API

One endpoint in, structured transcripts out.

Send audio, get back a transcript your pipeline can actually use: word-level timestamps, speaker labels, and confidence scores in clean JSON. No dashboards to learn, no formats to fight. The interface is deliberately small because the work happens in the model.

We have spent years producing the training data behind other companies' speech recognition. The API is that experience turned into a product: a recognizer shaped, batch after batch, by the hardest audio our clients could send us.

spirelight · stt transcribing
POST /v1/transcribe audio: field_interview_014.wav · 00:12:36 · 2 speakers { "segment": { "speaker": "S2", "start": 41.86, "end": 45.12, "text": "Yeah, we'd already moved the, eh, the whole intake to the new clinic by then.", "confidence": 0.96 }, "language": "en-IE", "words": [ …word-level timestamps… ] }
Complicated speech

Built for the recordings that break other engines.

Clean studio audio is a solved problem. Real speech is not. Our clients' hardest files defined what this model had to be good at, so it was trained on exactly the conditions most engines are trained to avoid.

Accents and dialects

Regional varieties and non-native speakers, learned from recordings made by native contributors across our network rather than from whatever a web crawl happened to find.

Spontaneous conversation

Real dialogue with false starts, hesitations, repairs, and interruptions. The model transcribes speech as people actually produce it, not as scripts imagine it.

Crosstalk and overlap

Multi-speaker audio where voices collide. Speaker labels stay stable through overlaps and quick turn-taking instead of collapsing into one blurred channel.

Noise and distance

Street noise, room echo, far-field microphones, and in-vehicle recordings. Trained on audio captured in the conditions your users are actually in.

Domain vocabulary

Technical, medical, and product-specific terminology that generic models replace with the nearest common word. Our transcripts keep the term your team needs.

Long-form audio

Interviews, meetings, and hearings that run for hours. Consistent quality and stable speaker labels from the first minute to the last.

The training data

Trained on data we created, not data we found.

Most speech models are trained on scraped audio of unknown origin. Ours is trained exclusively on speech data produced by our own operation: recorded by consented contributors, transcribed by trained transcribers, and validated by human reviewers. That is the whole reason it exists, and the reason it took two years.

2 yrs
of dedicated model and data work behind the release
100%
of training data internally created and consented
10,000+
contributors in the network behind the recordings
0
hours of scraped or unlicensed audio in the model

Recorded on purpose

Every training hour was recorded to a spec: chosen speakers, chosen conditions, chosen scenarios. When the model was weak somewhere, we went out and recorded exactly what it was missing.

Human-validated transcripts

The model learns from transcripts that trained people produced and reviewers audited. Clean labels are the quiet advantage: a model can only be as precise as the text it learns from.

Clean provenance

Consent is documented for every voice in the training set, in line with GDPR. You get a recognizer with a training history we can actually account for, end to end.

What you get back

Transcripts structured like training data, because that is our standard.

We have spent years delivering transcripts precise enough to train models on. The API returns the same discipline for every file you send.

Word-level timestamps

Start and end times for every word, so subtitles, search, and alignment work without post-processing.

Speaker labels

Stable per-speaker labels across the whole file, including through overlaps and quick exchanges.

Confidence scores

Per-segment confidence so your pipeline knows what to trust automatically and what to route to human review.

Punctuation and formatting

Sentence boundaries, casing, and numbers formatted for reading, not raw lowercase token streams.

Clean JSON

One predictable schema for every request, designed to drop straight into your existing pipeline.

Your data stays yours

Audio you send is processed to return your transcript. It is not added to our training data unless you explicitly agree in writing.

Get access

The API is live. Access is by request.

We are onboarding the first teams now. Fill in the form with your company email and we will send a 6-digit code to verify it. Once verified, your request goes straight to our team and we get back to you with credentials. If your audio is complicated, that is exactly what we want to see.

Free providers (gmail, hotmail, outlook, etc.) are not accepted.

Speech-to-text API FAQ

What is the Spirelight speech-to-text API?

It is an API that turns audio into structured transcripts with word-level timestamps, speaker labels, and confidence scores. We spent two years building it, and it is trained exclusively on speech data we recorded, transcribed, and validated ourselves.

What was the model trained on?

Only internally created training data: speech recorded by consented contributors from our own network, transcribed and human-validated by our own teams. No scraped audio, no data of unknown origin. The same production pipeline we run for clients has been feeding this model for two years.

What kind of audio does it handle best?

Complicated speech. Strong accents and regional dialects, spontaneous conversation with overlaps and disfluencies, noisy real-world recordings, multi-speaker audio, and domain-heavy vocabulary. It was built for the recordings other engines give up on.

How do I get access?

The API is live and access is by request while we onboard the first teams. Use the request form on this page: enter your name, company, and company email, verify the email with a 6-digit code, and we will get back to you with credentials.

Do you train on the audio I send?

No. Audio you send is processed to return your transcript. It is not added to our training data unless you explicitly agree to that in writing.

Can you still build custom datasets for our own models?

Yes. The API and our data services run on the same operation. Teams training their own models keep working with us on custom collection, transcription, and QA exactly as before.

Want to try it on your hardest files? Request API access.