← Thinking

Becoming Audio-Native Audits Your Company

Voice is the most useful interface we have added to our systems in years, and building it turned up something we were not looking for. An adversarial review found six ways it broke, and not one of them was about audio. Taking the screen away is an unusually cheap way to find out what your controls were quietly assuming.

Listen

The full essay, read aloud, with the words lit as they are spoken.

0:0017:16

Chapters

The thinking and the editing are Derek’s. The voice is an AI recreation of his own.

Take the screen away

We spent a while adding voice across our own estate: four repositories, one voice, every surface someone meets us on. A client portal, the admin side of the operating spine that carries our consulting work, a learning system, and the essays on this site.

The interface is the reason to do it, and it earns its place. What we did not expect was what the build turned up on the way. An adversarial review of the design found six ways the thing broke, and not one of them was about audio.

Every one was a place where our controls had quietly assumed a screen was present, and nobody had written that assumption down. Approval gates. Judgements about which actions were reversible enough to leave open. How permission scope gets resolved on a request. All of it had been reasoned about carefully, and all of it silently depended on a person looking at a display.

That is the part worth passing on, and it is why we would now recommend this exercise to a company with no interest in audio whatsoever. Removing a modality is a cheap way to find out what your governance was resting on.

Your controls lose the screen

Approval gates that assumed someone was looking. Our assistant deliberately leaves reversible actions ungated (raising a request, leaving a comment, saving a draft) because gating everything trains people to click through the gates that matter. Sound reasoning, and it silently assumes a client watching confirmation chips appear on screen. Over voice they hear “done”, and state has changed unseen.

Interruption stopped meaning what it used to. Our streaming layer deliberately lets a turn finish when the connection drops, so closing a tab does not lose work. Correct for a closed tab; wrong for a person cutting in. Someone who interrupts to stop something expects it stopped.

A dangling approval bricks the conversation. Voice invites phone-in-pocket use. The approval card appears, is never tapped, and every subsequent turn is blocked. It stays blocked afterwards on the typed interface the person goes back to.

The allowance was counted in the wrong unit. Daily limits were in turns, sensible for typed chat. A ten-minute call is easily forty turns, so two calls would darken the typed assistant for the rest of the day.

Scope resolution assumed identity would arrive by cookie. An administrator’s data scope was resolved from the session cookie on a request, the signal that carries who is signed in, not something that should be left to decide what they can see on its own. Voice runs server-to-server and carries no cookie, so with no identity to read, the code’s fallback resolved to the widest scope rather than the narrowest. Caught in the design review, before any of it could run: refuse the administrator role at the point of granting a voice session and again at every call, instead of defaulting open when the channel that normally carries identity is not there.

And the rule that had to be written above all of them: voice may propose a binding action; it may never confirm one. The confirmation stays visual and tapped, enforced in the adapter rather than in prompt text, because a rule that lives in a prompt is a request rather than a control.

That is today’s answer, not a permanent one. It holds because a spoken “yes” is genuinely hard to trust right now: a noisy room, a word the model mishears, a call that drops mid-sentence. As recognition gets more reliable the line may move. It should not move before that.

Read them as a set and the pattern is hard to miss. If your governance runs on approvals, confirmations, “this one is reversible so we left it open”, or scopes derived from session state, some of it rests on the same assumption, and nobody has written that down either.

Audio is two programmes, not one

Everything after this follows from one distinction, so it is worth making before anything else: audio is two programmes, not one.

Narration is one-way and batch, and it produces an artefact. It costs money once, it is cacheable, and it fails safely. The worst outcome is a mispronounced word. What makes it newly worth doing is that synthetic reading is no longer something you endure. It is good enough that people pick it over reading, and the audio now knows where it is in the text word by word, which is what separates a recording from something you can follow along with, resume, and scrub by chapter.

Conversation is two-way and live, and it is an act rather than an artefact. Someone talks to your system and it does things. It costs money per user per minute, and it fails in ways that reach real records. Its own threshold was turn-taking: a system can now be interrupted mid-sentence and pick the thread back up.

Nearly every mistake we have watched teams make here, including two of our own, comes from running them as one initiative, with one business case and one owner. The six findings above are all conversation. Everything below this line is mostly narration, and it is the half that is easier to get right.

Diagram showing one ambition, audio-native, pointing outward to two separate programmes: narration, a one-way batch process that produces an artefact, and conversation, a live two-way act that reaches real records.
One ambition, two programmes, with different budgets, different risks, and different owners.

What you ship becomes a contract, not a file

Narration produces two files: the audio, and a timing sidecar carrying the version, the voice and model, the duration, a chapter list, and every word with a start and end time, plus a block index recording which element of the document each word came from.

Without that index, read-along is guesswork. With it, a player can highlight at block level and degrade gracefully when word matching drifts, and resume, chapter scrubbing and a podcast feed with real enclosures all become possible.

That is where the fork in the road sits: everything people want from audio is downstream of a contract, and none of it is downstream of a player. A company that buys the player has bought a feature. A company that defines the artefact has bought an asset every future surface can consume, and can build those surfaces before anything has been recorded. That is how our own read-along came to be finished and measured while the narration side was still unwritten.

Someone has to decide who performs it

Everything you publish now has a spoken form, and the first decision is not mechanical. It is whether the piece needs a human performance, the emotional weight and reputational value of an actual person reading it, or whether it only needs audio utility: the content made available to someone who would rather listen, at the scale a library requires, without a studio session standing between the words and the listener. Most of what a company publishes is the second kind. Treat everything as the first and you end up narrating only the flagship piece, because a booked human performance does not scale to a publishing cadence.

The consequences of getting that decision made land upstream, in parts of a company with nothing to do with engineering. Editorial review covers two artefacts. So does sign-off. A correction is no longer a correction. It is a correction plus a regeneration, and if nobody has decided what triggers that, you will either serve stale audio or re-narrate the library every time someone fixes a typo in a metadata field.

We settled it with a rule rather than a process. Re-narration is keyed to a hash of the narration script, not the source document. That reads as an implementation detail until you notice it is the only thing standing between you and a bill that scales with editorial activity.

Your content model gets audited

You cannot narrate a blob. Say a document out loud and you find out how structured it actually is, which for most companies is less than they believed.

The obvious part is the spoken projection: skip figure blocks but speak the caption as “Figure: …”, turn headings into transitions, drop navigation and calls to action. Real work, and not tag-stripping.

The interesting part is anything that is not linear prose. Our training modules hold charts, multiple-choice screens and checklists, and a chart has no reading order at all, so someone has to invent one. At least one of those decisions is pedagogy rather than formatting: on a quiz screen, the answer is not read until the learner has chosen. No automated conversion can make that call.

This is the change most likely to land on people who do not think they are in the audio project. Anything held as a table, a diagram, a form or an interactive step needs someone to decide what it sounds like. That is editorial work, and an honest plan staffs it.

One half of the budget scales

Narration behaves like a build cost: one-off, predictable, cacheable, falling. Narrating four long essays comes to roughly 42,000 characters, or about four dollars, once. A full training module is about three-fifty. Conversation is the only cost in the picture that scales with users, which is a strategy fact rather than a billing detail. A per-user budget in minutes has to exist before launch, and the two halves cannot share a business case without one of them being wrong.

Companies that plan this as a single “audio initiative” price it off the narration numbers, because those are the encouraging ones, and meet the conversation numbers in production.

Silence reads as breakage

In text, latency is an irritation. In voice it is a defect, and the threshold is unforgiving. More than about two seconds of silence reads as a fault.

Expect two to three and a half seconds before the first audio on a simple turn, and four to six when the assistant has to go and look something up. The levers are a faster model tier, fewer reasoning steps, a narrower tool catalogue, and pushing context in at the start of the call.

The most effective one is not an engineering lever. Prompt the assistant to say a sentence before it goes and looks, something like “let me pull that up for you”, so the audio covers the round trip. That is what a person would do, and it only occurs to you once you are listening rather than reading. A fair miniature of the whole exercise: audio problems are usually fixed by a change in manners, governance problems by a change in code.

The inverse matters just as much in the kind of system this is built for. In an enterprise workflow, long silence is often exactly what it should be: someone reading, someone working, someone thinking before they answer. An assistant that treats every pause as dead air and fills it with “is there anything else I can help with?” trains people to stop using it. What voice needs here is not urgency. It is an easy way to pause and resume. A person says “give me a minute”, or simply goes quiet, and the system waits without narrating its own patience.

Accessibility stops being separate

An audio mode that cannot be operated from a keyboard and does not announce itself is a contradiction, so the accessibility work and the audio work merge whether you plan for it or not.

Ours audited us on the way past. The training app had four ARIA attributes in total and no live regions anywhere, so screen changes, quiz feedback and score lines were all silent to a screen reader. There was no reduced-motion handling, and the chart segments could only be reached with a mouse. None of it was going to be found by the accessibility backlog it had sat on for a year. It was found by trying to make the app speak.

Audio is one of the few product investments where the accessibility dividend is structural rather than virtuous: you cannot ship the feature without collecting it.

The brand acquires a voice

Three questions arrive that a company will not have had before, and none is technical.

Which voice, and is it one? The harder version of the question is arriving already: if a listener can choose the voice, or the voice can be matched to who is listening, then the brand no longer owns the sound at the point of delivery. That is a decision about identity rather than configuration, and it is better made deliberately than discovered in a settings menu somebody shipped. Register sits underneath: measured and warm, or a bright explainer preset, is now a brand decision a build script has to be able to read.

Whose voice, and does the listener know? Ours is a professional clone of the founder’s. Hearing it narrate an essay he wrote is an easy case. Hearing it answer live is not: a person will reasonably believe they are speaking to him, which needs explicit disclosure at the start of every call. That is not a legal formality. It is the line between a product and a deception.

Who else is holding the recording? A voice vendor becomes a sub-processor holding client audio and transcripts, and any post-call webhook carries the full transcript. Under Australian privacy principles and GDPR alike that needs disclosure and probably consent at call start, which means a privacy policy that mentions it, on a surface that may not have had one.

Where the work sits inside the company

Split by cadence, not by surface. The obvious structure gives each surface its own audio implementation. We put all narration in the one system that already held the key, the cloned voice and the publish path, and all live voice in the shared services hub that already held session auth, the tool catalogue and the approval gate. Consuming surfaces get URLs and timing files, and no key at all. The failure mode this avoids is mundane and common: four surfaces, four keys, four slightly different voices, and nowhere to change any of it.

A two-layer stack. The upper layer is what people meet: website essays, the learning system, and the client portal with its operating spine. The lower layer is what produces it: batch narration, which turns anything published into speech, and live voice, which carries conversation and holds the approval gate.
The surfaces people meet, and the two engines underneath.

When two bindings are credible, race them rather than argue. Ours were an ElevenLabs-hosted agent bound straight to our data, which is a couple of hours of configuration but gives up the approval gate, the audit trail and the review pipeline; or ElevenLabs as a pure voice layer over our own agent, which keeps all three and pays in latency. Nobody had the measurement, so we specified both, fixed the decision rule in advance so the result could not be re-argued afterwards, and made the race safe with one rule: the fast binding gets read-only permissions, enforced at the token rather than intended in a prompt.

The order to do it in

Diagram of four steps ordered by blast radius: narrate what you already publish, ship the timing contract, a voice that can only read, and finally a voice with the authority to act.
Everything before the last step can be got wrong cheaply. That is the point of the order.

Narrate what you already publish. Smallest blast radius in the company, shareable within days, and it proves the pipeline against real content rather than a sample.

Ship the timing contract, not just the audio. Read-along, chapters and resume are what turn a novelty into something people use twice. The step most likely to be skipped, and the one that decides whether the rest is worth building.

Then the structured content: courses, documentation, anything non-linear, where the projection work and the accessibility debt both live, and both are cheaper to face on content you control.

Then a voice that can only read. It front-loads the voice, the persona, the disclosure script and the task set a fuller build reuses, while risking nothing.

Then a voice that can act. Last, deepest, and the only one that can carry work with consequences. By then you will have found the things that break, on paper rather than live.

What we would claim, and what we would not

Narration proved the contract-first argument on its own. The listening experience, the player, the read-along, the podcast feed, was finished before a single essay had actually been narrated, because the contract said in advance what a recording would be. That is only possible when the contract comes first. Buy a player instead of defining one yourself, and there is nothing to build until the audio arrives.

Voice has caught up since. It is built and tested, and running across three surfaces now: the client portal, the operating spine behind it, and the learning system.

We would not claim to be audio-native, and the word deserves one paragraph of scepticism before we drop it. In software, “native” has always meant a thing that runs in its own environment without a translation layer. Read honestly, that would mean your primitives are audio-shaped: composed for the ear, with text as the derived form. Ours are not. The essays are written and then spoken, and a spoken request to the agent still starts as text before anything answers it aloud. Almost nothing anyone is doing is otherwise, and most of what is sold under the label is a play button: a vendor’s embed reading the page aloud, alt text and cookie notices included, because it strips tags rather than writing a script.

Three tests, then. Run them on your own work, or on anything sold to you under the label:

  • Publish a correction. Does the audio change on its own, or does someone have to go and remake it?
  • Start an essay, close the tab, come back tomorrow. Does it resume on the sentence you left, or at the beginning?
  • Ask it out loud to do something that costs money. Does it refuse, say what it was about to do, and put a button in front of you?

The first two are engineering, and a good vendor will get you most of the way. The third is the one that fails, and it fails for reasons that have nothing to do with audio. It depends on whether your company already knew where its irreversible steps were, and wrote that down somewhere a machine can read. Most have not. That is the work the word is hiding.


Related: What “AI-First” Actually Means for Marketers. On the approval gate this design had to re-derive for a surface with no screen, and why “the harness assembles, the human commits” is the rule that survives a change of modality.

If this is the kind of problem your team is working through or you'd like to understand the technical implementation, we'd like to hear from you.

Talk to us