Sending and receiving voice notes through the WhatsApp Business API: formats, limits, webhooks and cost
Yes, the WhatsApp Business API can send and receive voice notes, and a voice note is simply an audio message with one extra flag.
Send a mono OGG file encoded with Opus, set "voice": true, and the customer sees a playable voice message
with your profile picture. A customer's voice note reaches you by webhook as a media ID that expires after 7 days.
This reference covers every limit Meta documents and what changed on 1 October 2026. It also lists the edge
cases Learnmind.ai plans for when building voice replies in Dubai.
The short answer
A voice note is an audio message with a voice flag. You send "type": "audio" with
"voice": true and an OGG file encoded with Opus. Without the flag it goes as basic audio, which the customer downloads by hand.
The limits are small and specific. Every audio type may be up to 16 MB. A voice message only shows a play icon if the file is 512 KB or smaller.
Inbound voice notes arrive as media IDs. The webhook carries the ID, the MIME type
audio/ogg; codecs=opus and a voice flag. Media IDs from webhooks expire after 7 days, and each download URL after 5 minutes.
Voice notes are replies, not openers. Audio is a free-form message, so it needs an open 24-hour customer service window. No template header type accepts audio.
A voice note costs the same as a text. From 1 October 2026 it is a charged service message after 1,000 free a month per business number. To a UAE number that is USD 0.0157 each.
You need the full Cloud API set-up first. A Meta app, a business portfolio, a registered number, a permanent token, a webhook and, since 1 October 2026, a payment method.
Every voice note limit Meta documents, in one table
Meta documents voice notes across several pages, and the numbers are easy to miss when they sit apart. We read each page on 2 October 2026. The table gathers every limit that affects a voice note, with the page that states it.
| Limit | Value | Where Meta states it | What it means in practice |
|---|---|---|---|
| Maximum audio file size | 16 MB for AAC, AMR, MP3, M4A and OGG | Audio messages; Media | Far more than any spoken reply needs |
| Play icon on a voice message | 512 KB or smaller, otherwise a download icon | Audio messages | The real ceiling for a voice note that plays with one tap |
| Voice message encoding | OGG with the Opus codec, mono input only | Audio messages; Media | Any other file type or codec makes transcription fail |
| Media ID from your own upload | 30 days | Media | A reusable greeting or price explainer must be uploaded again every 30 days |
| Media ID received in a webhook | 7 days | Media | Download a customer's voice note promptly, or lose it |
| Media download URL | 5 minutes | Media | Request the URL just before you download, never in advance |
| Cache on a hosted link | 10 minutes | Service messages | A changed file at the same link can play the old version |
| Largest file a customer can send you | 100 MB, above that error 131052 | Media | Ask the customer to send a shorter recording |
| Typing indicator | Dismissed on your reply or after 25 seconds | Typing indicators | Slow voice processing loses the "typing" signal |
| Webhook retries | Up to 7 days, and duplicates are possible | Webhooks overview | Process each voice note once, keyed on its message ID |
| Delivery retry period | 30 days by default; 10 minutes for authentication templates | Service messages | A voice note to a phone that is switched off keeps trying for 30 days |
Meta's audio and media examples use Graph API version v25.0. Meta edits these pages without notice, so check the page itself before you build against a number.
Voice message or audio file: what the voice flag changes
Meta draws a firm line between two kinds of audio. A voice message, in Meta's words, is "a recording of one or more persons speaking, and can include background sounds like music". A basic audio message is any other audio file. The difference shows up on the customer's phone in six ways.
| On the customer's phone | Voice message ("voice": true) | Basic audio (flag false or left out) |
|---|---|---|
| File accepted | OGG with the Opus codec, mono | AAC, AMR, MP3, M4A, or OGG with Opus |
| What the message shows | Your business's profile image with a microphone icon | A download icon and a music icon |
| Download | Automatic | Manual, unless the customer has auto-download on and conditions are met, for example wi-fi |
| Text transcript | Shown if the customer's setting is Automatic; a "Transcribe" option if Manual; nothing if Never | Only if the file is OGG with Opus |
| Play icon | Only if the file is 512 KB or smaller | A play icon after download, or at once with auto-download on |
| "Played" status webhook | Yes, the first time the customer plays it | Not documented for basic audio |
There is one useful overlap. If you send an OGG file encoded with Opus as basic audio, Meta says the WhatsApp client swaps the music icon for a microphone icon. A transcript or the "Transcribe" option can then appear too. For a spoken reply, though, set the flag. It is the only documented way to get automatic download and the played status.
Which one to use is a design decision more than a technical one. A spoken answer from your team should be a voice message. A recorded announcement or a jingle is better sent as an audio file. How voice notes work for a business on WhatsApp, beyond the API, is covered in AI voice notes for business.
- Voice message
- An audio message sent with
"voice": trueand an OGG Opus file. Meta also calls it a voice note or voice memo. - Basic audio message
- An audio message sent without the voice flag. It displays as a file with a music icon.
- Media ID
- The identifier Meta gives an uploaded or received file. You send audio by ID, and you download received audio through it.
- wamid
- The WhatsApp message ID. It links a sent message to its status webhooks and a received one to your read receipt.
- Customer service window
- The 24 hours after a customer messages or calls you, during which free-form messages such as audio are allowed.
- WhatsApp Business Account
- The account your Meta app connects to. It owns your business phone numbers, templates and billing.
Supported audio formats, and why OGG Opus matters
Cloud API accepts five audio types, each up to 16 MB. Only one of them can be a voice message. The table copies Meta's own list, with the MIME type you must declare on upload.
| Audio type | Extension | MIME type | Maximum size | Can be a voice message |
|---|---|---|---|---|
| AAC | .aac | audio/aac | 16 MB | No |
| AMR | .amr | audio/amr | 16 MB | No |
| MP3 | .mp3 | audio/mpeg | 16 MB | No |
| MP4 Audio | .m4a | audio/mp4 | 16 MB | No |
| OGG Audio | .ogg | audio/ogg, Opus codec only; base audio/ogg not supported; mono input only | 16 MB | Yes |
Meta names the two most common audio errors. The first is a mismatched MIME type, where the declared type does
not match the file's extension. Its error code is 131053. The second is an OGG file encoded with anything other
than Opus. Meta suggests checking a file's real type from the command line with file -I on a
UNIX system.
If your recording or voice tool exports WAV or MP3, convert it first. Meta's own documentation mentions ffmpeg for preparing video files, and the same tool converts audio. Here is how a spoken reply becomes a valid voice message.
Converting a recorded reply into a WhatsApp voice message
Starting file: reply.wav, a stereo recording of a 50-second answer about clinic opening hours.
Command: ffmpeg -i reply.wav -ac 1 -c:a libopus -b:a 32k -application voip reply.ogg
What each part does: -ac 1 makes it mono, as Meta requires. libopus encodes with Opus. -b:a 32k sets 32,000 bits per second. -application voip favours speech intelligibility.
Expected size: 50 seconds at 32 kbit/s is 1.6 million bits, about 200 KB. That is well under 512 KB.
Upload as: type=audio/ogg, then send with "voice": true.
How long a voice note can be before it stops playing with one tap
The 512 KB play-icon threshold is the limit that matters, not 16 MB. How many seconds fit depends on the bitrate you encode at. The Opus specification, RFC 6716, supports 6 to 510 kbit/s. It gives 16 to 20 kbit/s as the sweet spot for wideband speech, and 28 to 40 kbit/s for fullband speech.
| Opus bitrate | RFC 6716 guidance | Longest voice note under 512 KB | Longest file under 16 MB |
|---|---|---|---|
| 16 kbit/s | Wideband speech sweet spot (16 to 20) | About 4 minutes 16 seconds | About 2 hours 13 minutes |
| 24 kbit/s | Between wideband and fullband speech | About 2 minutes 50 seconds | About 1 hour 29 minutes |
| 32 kbit/s | Fullband speech sweet spot (28 to 40) | About 2 minutes 8 seconds | About 1 hour 7 minutes |
| 48 kbit/s | Fullband mono music (48 to 64) | About 1 minute 25 seconds | About 44 minutes |
Our arithmetic, taking 1 KB as 1,000 bytes and 1 MB as 1,000,000 bytes, so the figures are slightly conservative. Container overhead is not included. For spoken replies, 24 to 32 kbit/s keeps a two-minute answer playable with one tap.
Most business voice notes need far less than two minutes. The length limit is rarely the problem. The usual problem is the format. An MP3 arrives as a music file, and a stereo OGG breaks Meta's mono-only rule. How to write the words themselves is covered in how to write AI voice note scripts.
Sending a voice note: upload once, then send by media ID
Sending audio takes two API calls. First you upload the file to Meta and receive a media ID. Then you send a message that points at that ID. Meta also accepts a public link, but recommends the ID "for better performance".
- Encode the fileOGG container, Opus codec, one channel. Keep it at 512 KB or under.
- Upload itPOST to
/PHONE_NUMBER_ID/mediawithmessaging_product=whatsappand the file, declared asaudio/ogg. The response is a media ID. - Send the messagePOST to
/PHONE_NUMBER_ID/messageswith"type": "audio", the media ID and"voice": true. - Store the message IDThe response returns a wamid. It confirms Meta accepted the request, not that the customer received it.
- Watch the status webhooksSent, delivered, read and played arrive later, each carrying the same wamid.
| Field in the send request | Value for a voice note | Note from Meta's documentation |
|---|---|---|
messaging_product | whatsapp | Always this value |
recipient_type | individual | group is used for group messages through the Groups API |
to | The customer's number, for example +9715XXXXXXXX | Meta recommends including the plus sign and country code |
type | audio | The same type covers voice and basic audio |
audio.id | The media ID from your upload | Required if using uploaded media |
audio.link | A URL on your own server | Only if hosting the file yourself; "not recommended" |
audio.voice | true | Optional. Set to true for a voice message; false or omitted for basic audio |
The phone number format matters more in the Gulf than it looks. Meta warns that if the plus sign is left out, your business number's own country code is added to the front. A UAE business sending to a Saudi customer without the plus sign could reach the wrong number entirely. Store every number in full international format.
Audio messages have no caption field in Meta's request syntax. If a voice note needs a written line beside it, such as an address or a booking time, that is a separate text message. Meta does not guarantee that separate messages arrive in the order you sent them. If order matters, wait for the delivered status of the first before sending the second.
If you do host files yourself, know that Cloud API caches a linked file for 10 minutes. Replace the file at the same link within that time and the customer may hear the old one. Meta's fix is to add a random query string to the link, which it treats as a new file.
Receiving a customer's voice note: webhook, media ID, download
When a customer sends a voice note, Meta posts a messages webhook to your server. The same webhook fires for an audio file the customer attaches, and for audio sent after tapping a Click to WhatsApp ad. The audio is not inside the webhook. You get a pointer to it, and you fetch the file yourself.
| Webhook field | Example value | What it tells you |
|---|---|---|
type | audio | The message is audio, whether voice note or file |
audio.id | A long number | The media ID you use to fetch the file |
audio.mime_type | audio/ogg; codecs=opus | The format, as in Meta's example payload |
audio.sha256 | A hash string | Lets you confirm the download is complete and unaltered |
audio.voice | true or false | True if recorded with WhatsApp's own voice recording feature; false for an attached file |
audio.url | A media URL | A direct download link, released gradually from 12 November 2025, so it may be missing |
referral | Ad details and ctwa_clid | Present only if the message came through a Click to WhatsApp ad |
from, id, timestamp | Number, wamid, Unix time | Who sent it, the message ID, and when |
The voice flag is more useful than it looks. An attached audio file arrives with it set to false. That
might be a song or a call recording rather than the customer speaking to you. Treat it with more care than a
note the customer recorded in WhatsApp.
Here is the sequence a production system should follow for each inbound voice note.
- Acknowledge the webhook at onceReturn HTTP 200 and do the work afterwards. Meta retries any webhook that does not get a 200 response.
- Ignore duplicatesMeta retries failed webhooks for up to 7 days and warns that retries can create duplicates. Key each voice note on its wamid.
- Mark it read and show typingOne call marks the message read and shows a typing indicator. The indicator disappears after 25 seconds or when you reply.
- Get a fresh download URLGET the media ID, or use
audio.urlif your webhook has it. The URL is valid for 5 minutes. - Download with your tokenSend your access token in the Authorization header. Without it the request fails.
- Handle a 404Meta's advice is to request a new URL and try again. If that fails too, renew the access token.
- Check the fileCompare the SHA-256 hash with the webhook's value before you process it.
- Turn speech into text yourselfThe audio webhook has no transcript field. Your system needs its own speech recognition.
- Reply inside the windowThe customer's voice note opened or reset the 24-hour window, so any service message type is allowed.
Step eight surprises people. WhatsApp announced voice message transcripts on 21 November 2024. It says they are "generated on your device so that no one else, not even WhatsApp, can hear or read your personal messages". A customer may read your voice note as text, but your system never receives that transcript.
What happens after the audio arrives, from transcription to reply, is the subject of how an AI understands the voice notes your customers send. Gulf dialects, Modern Standard Arabic and switching between them are covered in Arabic AI voice notes.
How long a customer's voice note stays available
Three clocks run at once, and they are easy to confuse.
| Clock | Length | What expires |
|---|---|---|
| Media ID from a webhook | 7 days | Your ability to download the customer's voice note at all |
| Media download URL | 5 minutes | One specific download link; request another from the ID |
| Media ID from your own upload | 30 days | A file you uploaded to send; Meta says such files "persist for 30 days, unless they are deleted earlier" |
A voice note you have not downloaded within 7 days is gone.
Meta's webhook retries also stop after 7 days, so a longer server outage can lose the message entirely. A patient who described a symptom by voice on a Thursday cannot be listened to the following Friday.
Download on arrival, then decide what to keep. Meta's Media API also lets you delete a media asset by its ID.
Once you download a voice note, you hold a recording of a customer's voice on your own systems. What to keep, for how long, and who may listen is a data protection question, not an API one. We set out the UAE position in WhatsApp and UAE data protection.
The 24-hour window: a voice note can answer, never open
Meta's rule is short. When a customer messages or calls you, "a 24-hour timer called a customer service window starts". Every new message or call from the customer resets it to 24 hours. While it is open you can send any service message type, audio included. Once it closes, "you can only send pre-approved template messages".
A customer's voice note is a message, so it opens or resets the window like any text. Meta also notes a rare known issue where a business receives a message but cannot respond within the window. And as Meta reminds developers, you may only message people who have opted in to hear from you.
Can a WhatsApp template carry audio
No. Meta's template components page lists the header formats a template may use, and audio is not among them.
| Template header format | Allowed | Detail from Meta |
|---|---|---|
| TEXT | Yes | Maximum 60 characters, one parameter |
| IMAGE | Yes | Uploaded through the Resumable Upload API |
| VIDEO | Yes | Uploaded through the Resumable Upload API |
| GIF | Marketing Messages API only | An MP4 file of up to 3.5 MB |
| DOCUMENT | Yes | For example a PDF |
| LOCATION | Utility and marketing templates only | Shown as a map; real-time locations not supported |
| AUDIO | Not listed | No audio header exists in the documentation |
The body of a template is text only, up to 1,024 characters, and a footer is up to 60. So there is no way to open a conversation with a voice note. A business that wants to reach a customer by voice after the window has closed has three routes, each with a trade-off.
- Send a template, then the voice note. An approved template invites a reply. Once the customer answers, the window is open and a voice note can follow.
- Use a video header. A video carries sound, so a template with a video header can deliver a spoken message. It displays as a video, not as a voice note. This is our reading, not a Meta feature.
- Call instead. WhatsApp calling through the API has its own permission rules and pricing. See WhatsApp calling in the UAE.
Any template that promotes something is a marketing template, charged at marketing rates. We cover the UAE side in WhatsApp marketing consent in the UAE.
Delivery statuses, including the played status for voice notes
Every message you send produces status webhooks. Voice messages gained one more on 17 March 2026, according to Meta's audio page. A "played" status webhook now fires the first time a customer plays a voice message the business sent.
| Status | Meta's meaning | What the customer sees | What it tells a business |
|---|---|---|---|
sent | Successfully sent from Meta's servers | One checkmark | The request worked; nothing more |
delivered | Delivered to the user's device | Two checkmarks | The moment Meta starts to charge |
read | Displayed in an open chat thread | Two blue checkmarks | The customer saw the voice note, not that they heard it |
played | The first time a voice message is played on the user's device | Blue microphone | The customer actually listened |
failed | Failed to send or deliver | Red error triangle | Check the error code, then resend as text if it matters |
The gap between read and played is the most useful signal a voice note gives you. A customer who opened the chat but did not press play may be in a meeting, or may simply prefer text. If that pattern repeats, switch that customer to text. We weigh the three channels against each other in voice note, text or phone call.
Two quirks are worth building for. Meta says a status counts as read only if it was also delivered. If the chat is already open when a message arrives, the delivered webhook may never come. And pricing details ride on the status webhooks too, but not on every one, so read them from whichever status carries them.
What a voice note costs from 1 October 2026, country by country
Meta does not price by content type. Its pricing documentation counts every non-template message as a service message, unless Meta's own agent platform powers it. Audio is a non-template message, charged per delivered message. A 40-second voice note costs exactly what a one-word text costs. Meta charges only for messages the business sends, and only once they are delivered.
What changed is that service messages are charged at all. Meta stopped charging for them on 1 November 2024 and resumed on 1 October 2026. The rules now are these:
- A free tier per number. Each business phone number gets 1,000 free delivered service messages a month. Meta charges from the 1,001st.
- No rollover. Unused free messages do not carry over to the next month.
- Service rate equals utility rate. Service messages are charged at the market's utility and authentication rate, with no volume tiers.
- In-window utility templates are charged too. Utility templates sent inside an open window are charged again from 1 October 2026, and they do not use the free tier.
- Ad traffic can still be free. When a customer arrives from a Click to WhatsApp ad on Android or iOS, a reply within 24 hours opens a free entry point window. Messages in it are free for a limited period. Meta's pricing page says 72 hours, while other Meta pages say up to 7 days, so check before you plan around it.
- No payment method, no delivery. Without one, Meta delivers service messages within the free tier but not after it.
The rate depends on the customer's country calling code, not on where the business is. Meta moved Qatar out of its "Rest of Middle East" region on 1 July 2026, and Kuwait and Oman on 1 October 2026. Each now has its own rate. Bahrain stays in the regional group. These are Meta's list rates for the six Gulf states, from its rate cards effective 1 October 2026.
| Customer's country | Meta rate-card market | Service message, USD | Service message, AED card | Marketing template, USD | Marketing template, AED card |
|---|---|---|---|---|---|
| United Arab Emirates (+971) | United Arab Emirates | 0.0157 | 0.0576 | 0.0576 | 0.2115 |
| Saudi Arabia (+966) | Saudi Arabia | 0.0107 | 0.0393 | 0.0576 | 0.2115 |
| Qatar (+974) | Qatar, named from 1 July 2026 | 0.0120 | 0.0440 | 0.0341 | 0.1252 |
| Kuwait (+965) | Kuwait, named from 1 October 2026 | 0.0440 | 0.1615 | 0.0792 | 0.2908 |
| Bahrain (+973) | Rest of Middle East | 0.0091 | 0.0334 | 0.0392 | 0.1440 |
| Oman (+968) | Oman, named from 1 October 2026 | 0.0247 | 0.0907 | 0.0341 | 0.1252 |
Service rates equal the utility rate in each market. The AED columns are Meta's AED-currency rate card, for accounts billed in dirhams. Meta may update rates up to quarterly, so check before you budget.
What voice replies cost a Dubai clinic in October 2026
Set-up: one business number, all customers on +971 numbers, no ad traffic.
Service messages delivered: 3,200 replies, of which 400 are voice notes. The first 1,000 are free, so 2,200 × USD 0.0157 = USD 34.54.
Utility templates inside the window: 600 booking confirmations × USD 0.0157 = USD 9.42. These do not use the free tier.
Marketing templates: 300 to opted-in patients × USD 0.0576 = USD 17.28.
Total Meta charges: USD 61.24, or AED 224.73 on the AED card (126.72 + 34.56 + 63.45).
If the 400 voice notes were texts instead: the total would not change by a single cent.
Same volumes to Kuwaiti numbers: 2,200 × 0.044 + 600 × 0.044 + 300 × 0.0792 = USD 146.96.
Illustrative example at Meta's list rates. UAE utility volume tiers start above 100,000 messages a month, so they do not apply here.The real cost of voice is not Meta's fee. It is everything around it: speech recognition for inbound notes, voice generation for outbound ones, and the review that keeps both accurate. Once you are past the free tier, splitting one answer into three voice notes triples the Meta charge, because each delivered message is billed. For the full rate picture see WhatsApp Business API pricing in the UAE, or model your own volumes with the WhatsApp pricing calculator.
What a business needs before it can send or receive voice notes
Nothing in this page works on the ordinary WhatsApp Business app. Voice notes through the API need the Cloud API set-up, which Meta's get-started guide and phone number pages describe. In order, a business needs the following.
- A Meta developer registrationA Facebook account or managed Meta account, registered as a developer.
- A Meta app with the WhatsApp use caseCreated in the App Dashboard with "Connect with customers through WhatsApp", linked to a business portfolio.
- A WhatsApp Business AccountThe account that holds your numbers, templates and billing.
- An eligible phone numberOwned by you, with a country and area code, able to receive an SMS or voice call. Short codes are not supported.
- Registration detailsA display name and a two-step verification PIN. The number must show a status of "connected" to send and receive.
- A permanent access tokenFrom a system user, with the business_management, whatsapp_business_messaging and whatsapp_business_management permissions.
- A webhook endpointSubscribed to the messages field, so voice notes and statuses reach your server. Meta supports mutual TLS for added security.
- A payment methodAdded in Billing Hub. Since 1 October 2026, service messages beyond the free tier are not delivered without one.
Two number problems are worth checking before you start. First, a number already in use with WhatsApp cannot be registered unless that account is deleted first. Meta also documents a coexistence route that keeps the number on the WhatsApp Business app. Such numbers have a fixed throughput of 20 messages per second rather than the default 80.
Second, your published business line may sit behind a phone menu. Meta says a WhatsApp registration call "cannot navigate an IVR". A number behind one can still be registered if it accepts international calls and can route the code to a real person.
There is also a policy layer. Meta's terms changed on 15 January 2026. AI providers may now offer general-purpose AI assistants on the platform only where Meta is legally required to permit it. An assistant that answers a business's own customers about its own services is, on our reading, a different use. That is how Learnmind builds.
The wider set-up, from choosing a provider to verifying the business, is in our WhatsApp Business API guide. Connecting an AI assistant to an existing number is covered in how to connect an AI assistant to WhatsApp Business in the UAE.
Edge cases that break voice notes in production
Most voice note failures are silent. The API accepts the request, the message delivers, and the customer still gets a bad experience. These are the ones Meta's documentation explains, with the fix it gives or implies.
| What you see | Likely cause | Fix |
|---|---|---|
| The customer gets a music file, not a voice note | The voice flag is missing, or the file is not OGG Opus | Re-encode to mono OGG Opus and send with "voice": true |
| A download arrow instead of a play button | The voice message is larger than 512 KB | Lower the bitrate or shorten the note |
| Error 131053 on upload or send | The MIME type does not match the file | Check the real type with file -I and fix the extension |
| Customers hear the previous version of a recording | A hosted link reused within the 10-minute cache | Upload and send by media ID, or add a random query string |
| The voice note arrives before the text that introduced it | Delivery order is not guaranteed | Wait for the first message's delivered status |
| 404 when downloading a customer's note | The 5-minute URL expired | Request a new URL; if that fails, renew the token |
| The same voice note is answered twice | Webhook retries created a duplicate | De-duplicate on the wamid before processing |
| Error 131052 instead of a file | The customer sent a file over 100 MB | Reply asking for a shorter recording, as Meta advises |
| Replies stop mid-month | No payment method once the free tier ran out | Add a payment method in Billing Hub |
How Learnmind builds this
Learnmind.ai is based in Dubai and builds bespoke AI systems for customer conversations. Voice notes are one part of our WhatsApp AI agent. Everything below is what we build, on the official WhatsApp Business Platform, using the API described on this page.
- It handles the voice notes customers send. A customer can speak instead of type, and the agent answers what they asked.
- It replies with a voice note when the moment calls for it. In our own words, "a warm spoken reply, built to sound like a person, not a script".
- It speaks the customer's language. Replies come in the customer's own language and the brand's voice. Arabic is auto-detected, and builds are bilingual English and Arabic.
- It answers from facts you approve, in under ten seconds. It asks qualifying questions, connects to your calendar and CRM, and remembers past conversations.
- It hands over cleanly. When a person is needed, the whole conversation goes with it, so the customer never repeats themselves. You see everything in an operator view.
The build follows the same steps every time. Day 1 is a 15-minute call where we map your services, pricing logic, common questions and brand voice, and you prepare nothing. Days 2 to 5 set the persona: name, tone, discovery questions, objection handling and escalation rules. We then build and test on real questions, and you are live from about day 14. Updates are made the same day.
One client example. Alcaz Media, a UAE performance marketing agency, runs a Learnmind WhatsApp assistant that answers leads within seconds, 24/7. It qualifies them, shares pricing and books strategy sessions. It also handles images and voice notes, and sends the founder a summary with the full transcript. The case study is on our results page.
You can also try it before committing. The free 14-day WhatsApp AI trial runs on your own number. The trial is free; Meta bills its own message fees to you directly, at the rates above.
Frequently asked questions
Can the WhatsApp Business API send voice notes?
Yes. Send an audio message with "type": "audio", a media ID and "voice": true. The file must
be OGG encoded with the Opus codec, in mono. The customer then sees your profile picture with a microphone icon.
What audio format does WhatsApp need for a voice note?
An .ogg file encoded with Opus, mono only, declared as audio/ogg. AAC, AMR, MP3 and M4A are accepted too, but
arrive as basic audio files. Keep a voice note at 512 KB or under so it shows a play icon.
Why does my audio show up as a file with a music icon?
It was sent as basic audio: the voice flag is missing, or the file is not OGG Opus. Basic audio messages show a download icon
and a music icon. Re-encode to mono OGG Opus and send with "voice": true.
Can WhatsApp template messages include audio?
No. Meta's template headers can be text, image, video, document or location, and GIF in the Marketing Messages API.
Audio is not listed. To reach a customer by voice after 24 hours, send a template first and the voice note once
they reply.
How do I receive voice messages from customers through the API?
Subscribe your webhook to messages. A voice note arrives with type audio, a media ID, the MIME type and a voice
flag. Request the media URL with that ID, then download it with your access token within 5 minutes.
How long can I download a customer's voice note?
Meta says media IDs received in webhooks expire after 7 days. Each download URL lasts 5 minutes, and you can request
a new one from the ID. Download on arrival rather than on demand.
Does Meta transcribe voice notes for businesses?
Not in the messages webhook, which has no transcript field. WhatsApp's own transcripts are made on the user's device.
A business that wants text needs its own speech recognition.
How much does it cost to send a voice note on WhatsApp in the UAE?
The same as a text reply. From 1 October 2026 each business number gets 1,000 free service messages a month. After
that, a reply to a +971 number costs USD 0.0157, or AED 0.0576 on Meta's AED rate card.
Who builds WhatsApp voice note automation in Dubai?
Learnmind.ai, based in Dubai, builds WhatsApp AI agents that handle customers' voice notes and reply by voice when
the moment calls for it. Arabic is auto-detected, builds go live in about 14 days, and a free 14-day trial runs on
your own number.
Can I send a voice note to someone who messaged me last week?
Not directly. Once 24 hours pass after their last message or call, you can only send an approved template. If they
reply to it, the window reopens and a voice note can follow.
Want your WhatsApp to understand voice notes and answer in kind?
We build WhatsApp AI agents that handle the voice notes your customers send, and reply by voice when it helps. Bilingual English and Arabic, live in about 14 days.
How we checked this, and what we could not settle
Checked: every limit, field name, status and error code comes from Meta's developer documentation, read on 2 October 2026. Gulf rates are from Meta's rate cards effective 1 October 2026. Opus guidance is from RFC 6716, encoding options from the FFmpeg documentation, and transcript facts from WhatsApp's blog.
Not settled: we could not confirm from a primary source which transcript languages WhatsApp
supports today, including Arabic. The audio.url webhook field is still rolling out. Meta does not say
whether basic audio receives a played status. The video-header route, the durations, the worked examples and the
unquoted edge-case fixes are our own work.
Sources
- PlatformMeta for Developers, Audio messages, read 2 October 2026
- PlatformMeta for Developers, Media, read 2 October 2026
- PlatformMeta for Developers, Audio messages webhook reference, read 2 October 2026
- PlatformMeta for Developers, Status messages webhook reference, read 2 October 2026
- PlatformMeta for Developers, Service messages, read 2 October 2026
- PlatformMeta for Developers, Template components, read 2 October 2026
- PlatformMeta for Developers, Pricing on the WhatsApp Business Platform, read 2 October 2026, including the rate cards effective 1 October 2026
- PlatformMeta for Developers, Pricing for non-template messages, read 2 October 2026
- PlatformMeta for Developers, AI Providers on the WhatsApp Business Platform, the 15 January 2026 terms change
- PlatformMeta for Developers, Typing indicators, read 2 October 2026
- PlatformMeta for Developers, Mark messages as read, read 2 October 2026
- PlatformMeta for Developers, Throughput, read 2 October 2026
- PlatformMeta for Developers, Webhooks overview, read 2 October 2026
- PlatformMeta for Developers, Business phone numbers, read 2 October 2026
- PlatformMeta for Developers, WhatsApp Cloud API get started, read 2 October 2026
- PlatformWhatsApp Blog, Introducing voice message transcripts, 21 November 2024
- ResearchIETF RFC 6716, Definition of the Opus Audio Codec, September 2012, section 2.1.1 on bitrates
- ResearchFFmpeg codecs documentation, libopus encoder options
- ResearchFFmpeg documentation, the audio channels option
- LearnmindThe Learnmind WhatsApp agent
- LearnmindLearnmind results, the Alcaz Media case study
- LearnmindHow a Learnmind agent goes live, the 14-day build
- LearnmindFree 14-day WhatsApp AI trial
Written by Edmund Gay, Learnmind.ai, Dubai. Limits, field names, statuses and rates are Meta's, as published on the dates listed; the encoding advice, durations, examples and fixes are our interpretation.