Sonoquill turns written text into a finished podcast episode, spoken with your own voice clone. You keep writing — a fact script, a blog post, a page of your site — and Sonoquill does the rest: it rewrites the text for the ear, checks every number against your source, synthesises the audio, assemble
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.9 and PHP 8.2.
SourceWordPress plugins · Nov 10, 2026
01 / Source details
Aboutthistool.
Sonoquill turns written text into a finished podcast episode, spoken with your own voice clone. You keep writing — a fact script, a blog post, a page of your site — and Sonoquill does the rest: it rewrites the text for the ear, checks every number against your source, synthesises the audio, assembles music and chapters, has it mastered and hands you a ready Podlove draft.
Nothing goes online on its own. There are two human approvals: you approve the spoken text, and you approve the finished audio.
Sonoquill grew out of the monthly sky-preview podcast of an astronomy club, where it produces every episode. It is released as open source in the hope that it is useful to others.
How an episode is made
01Source. Upload a DOCX, paste text, or pick a post or page of your site. Developers can add their own sources through a hook.
02Spoken script. A language model (Anthropic Claude) rewrites the text for listening: numbers as words, spoken transitions, a fixed opening and sign-off. The prompts are editable, in German and English.
03Checks. A deterministic number check compares every number, time and date of the source with the spoken script. A second model call looks for changed, missing or invented statements.
04Your first approval. You read and edit the script in the browser. An e-mail tells you when it is waiting.
05Voice. ElevenLabs speaks the script segment by segment with your voice clone. A pronunciation dictionary with phonetic (IPA) rules grows with every episode. Single passages can be re-recorded with your own voice.
06Assembly. Pauses, opener, rotating music bridges between chapters, outro, chapter marks and a WebVTT transcript — with ffmpeg on your server, or in plain PHP with Auphonic adding the music.
07Mastering and draft. Auphonic masters the episode; Sonoquill creates a Podlove draft with title, descriptions, chapters, transcript and an AI disclosure.
08Your second approval. You listen and publish the episode in Podlove yourself.
Highlights
Numbers you can trust. The number check is plain code, not a model: a date that changed between source and script blocks the approval until you confirm it.
Your voice, your rules. Works with your own ElevenLabs voice clone. With Eleven v4, phonetic (IPA) pronunciation rules take effect in German and other languages, not only in English.
Transparent about AI. Every episode carries a disclosure in the show notes, optionally also spoken at the end.
Runs on ordinary hosting. No ffmpeg? Sonoquill joins the audio in PHP and lets Auphonic mix the music. Health checks show what works on your server.
Costs under control. Model calls can run through the Anthropic Batch API at half price, and every episode shows what its model calls cost.
Requirements
Podlove Podcast Publisher
API keys for Anthropic, ElevenLabs (with a voice clone you have the rights to) and Auphonic
An encryption key in wp-config.php: define('AASPF_ENCRYPTION_KEY', '…'); — 32 random bytes, base64 encoded. The settings page suggests one.
Optional: ffmpeg and exec() for mixing the music on your own server
Sonoquill is an open-source project without support. Bug reports and pull requests are welcome on GitHub .
External services
This plugin connects to the following services. Nothing is sent before you enter the corresponding API key, and each request happens only when the respective step runs (started by you or by the automatic chain you enabled).
Anthropic (Claude API)
Used to turn the fact script into a spoken script, to create title, descriptions and chapters, to check the spoken script against the source and to suggest pronunciation rules. Sent: the fact script, the spoken script, your prompts and the list of dictionary terms. Endpoint: api.anthropic.com. Terms: https://www.anthropic.com/legal/commercial-terms — Privacy: https://www.anthropic.com/legal/privacy
ElevenLabs
Used for speech synthesis with your voice clone, for speech-to-speech re-recordings, to maintain the pronunciation dictionary and to show the remaining character quota. Sent: the spoken texts segment by segment, your re-recorded audio, dictionary rules. Endpoint: api.elevenlabs.io. Terms: https://elevenlabs.io/terms-of-use — Privacy: https://elevenlabs.io/privacy-policy
Auphonic
Used to master the assembled episode and, without ffmpeg, to add opener, bridges and outro. Sent: the assembled audio, the music files, title, descriptions, keywords and chapter marks; Auphonic calls back a webhook URL of your site when the production is done. Endpoint: auphonic.com. Terms: https://auphonic.com/terms_of_service — Privacy: https://auphonic.com/privacy
02 / Source details
Gettingstarted.
01Install Podlove Podcast Publisher.
02Upload and activate Sonoquill.
03Add the encryption key to wp-config.php (see Requirements).
04Open Sonoquill → Settings, enter the podcast details and API keys. The health checks show what is still missing.
03 / Source details
Frequently asked questions.
Does it work without ffmpeg?
Yes. Segments are then joined in PHP, and Auphonic adds opener, bridges and outro. The setting “Assembly” and a health check show which path is used.
Which languages are supported?
The interface is English with a German translation. Prompts and the number check exist for German and English.
Can I use a voice that is not mine?
Only if you have the rights to it. The voice clone is created in your own ElevenLabs account; Sonoquill only uses it.
Are the raw recordings private?
Segment audio, transcripts and the pronunciation file are stored in wp-content/uploads/sonoquill/data-<random> with an .htaccess and an index.php. Apache honours the .htaccess; nginx does not. The storage health check tests with a probe file whether the folder can be downloaded and tells you what to do. On nginx, block it with a rule such as location ~ ^/wp-content/uploads/sonoquill/data- { deny all; } , or move the storage outside the web root with the sonoquill_storage_dir filter.
What does an episode cost?
That depends on your plans with Anthropic, ElevenLabs and Auphonic. Speech synthesis is billed per character of the spoken script, the model calls per token. Each episode lists the costs of its model calls, and the ElevenLabs health check shows the remaining character quota.
Does it publish anything automatically?
No. If you enable it, Sonoquill runs the chain on its own up to the text approval and again up to the Podlove draft, but the approvals and the publishing are always yours.
Is there support?
No. Sonoquill is maintained as a side project. Issues and pull requests on GitHub are welcome; answers may take a while.
FinderPress Media Auditor helps site administrators scan for broken images, missing Media Library files, unreachable media URLs, and other media issues across WordPress content. Use it to audit images, video, audio, PDFs, featured images, and attachment files without sending scan data to an external
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati