Turn Notion drafts into narrated blog audio and podcast episodes
Every hour, we grab ready-to-narrate Notion drafts, rewrite them for listening, and publish an mp3 to Google Drive with your brand voice.
Every hour, on a cron trigger, turn publish-ready Notion drafts into narrated audio for our blog and podcast feed. The anchor here is Cartesia because the mp3 is the deliverable; Notion is the source and Google Drive is where the finished audio lives.
Start with Notion's Query a Database against our content database. Filter for pages where the Status property equals 'Ready for audio' and no audio URL has been written back yet, so we do not re-narrate the same piece. For each matching page, call Notion's Retrieve Page as Markdown to pull the full body.
Rewrite each article for the ear rather than the eye. Use shorter sentences, contractions, a spoken intro that names the piece and the author, and a short outro that thanks the listener. Add Cartesia SSML tags for pacing, breaths, and light emotion so the delivery feels natural. Convert URLs, footnote markers, and any visual-only elements (tables, image captions, code blocks) into spoken references or drop them; nothing should be read out that would sound awkward.
Before the first synthesis in a run, call Cartesia's List Voices once and pick our brand voice by name (or by a saved voice id if we have one). Then feed the rewritten script to Cartesia's Text to Speech (Bytes) using that voice id and request mp3 output. Keep each generated file under about six minutes of audio. If a rewritten script would run longer, split it into logical sections at natural breaks and generate one mp3 per section, named with the article slug plus a part number.
Upload each mp3 to Google Drive using Upload File (Multipart) with a descriptive filename (article slug, and part number if applicable). Then call Create Permission on the uploaded file with type 'anyone' and role 'reader' so anyone with the link can play it. Capture the webViewLink or webContentLink for each part.
Finally, call Notion's Update a Page to write the audio URL into the page's Audio property (or a comma-separated list of URLs for multi-part episodes) and flip Status to 'Narrated'. If any step fails for a given page, leave that page's Status alone and log the error so the next hourly run can retry it cleanly without producing duplicate mp3s.
Additional information
What does this prompt do?
- Checks your Notion content database every hour for pages marked 'Ready for audio'
- Rewrites each article for the ear with shorter sentences, contractions, a spoken intro and outro, and natural pacing cues
- Generates an mp3 with your Cartesia brand voice, saves it to Google Drive, and drops a shareable link back onto the page
- Splits long drafts into parts so each audio file stays around six minutes
What do I need to use this?
- A Notion workspace with a content database that has a Status field and a place to store the finished audio URL
- A Cartesia account with a brand voice you want to narrate in
- A Google Drive account for storing the finished mp3 files
How can I customize it?
- Change how often we sweep for new drafts (every hour, every morning, twice a day)
- Pick a different Cartesia voice, or swap it per author, show, or article type
- Adjust the target length before we split a draft into multiple parts
Frequently asked questions
Do I need to write my articles in a special format?
Will the audio actually sound natural?
What happens if a draft is too long for one episode?
Where does the finished audio actually live?
Can I use different voices for different posts?
Related templates
Turn every draft into a listen-anywhere episode.
Stop copy-pasting scripts into voice tools. Publish the mp3 the moment your article is ready.