<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Jaden Vo</title>
    <description>The latest articles on DEV Community by Jaden Vo (@jadenvo259).</description>
    <link>https://dev.to/jadenvo259</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4196071%2F885195a0-bf67-4218-9dd6-f978ae56ddac.png</url>
      <title>DEV Community: Jaden Vo</title>
      <link>https://dev.to/jadenvo259</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jadenvo259"/>
    <language>en</language>
    <item>
      <title>I built 2 free tools for creators who use AI voiceovers (no signup)</title>
      <dc:creator>Jaden Vo</dc:creator>
      <pubDate>Wed, 21 Oct 2026 08:54:45 +0000</pubDate>
      <link>https://dev.to/jadenvo259/i-built-2-free-tools-for-creators-who-use-ai-voiceovers-no-signup-914</link>
      <guid>https://dev.to/jadenvo259/i-built-2-free-tools-for-creators-who-use-ai-voiceovers-no-signup-914</guid>
      <description>&lt;p&gt;I do a lot of narration work, and for a long time I estimated two things by gut feel: how long a voiceover would run, and what the text-to-speech bill would be. Both were guesswork, and both were wrong often enough to annoy me. So I built two small tools and put them online for free.&lt;/p&gt;

&lt;h2&gt;
  
  
  What they do
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://ai.infinityme.dev/tools/script-reading-time-calculator/" rel="noopener noreferrer"&gt;Script Reading Time &amp;amp; Voiceover Length Calculator&lt;/a&gt;&lt;/strong&gt;: paste a script and it shows words, characters (with and without spaces), and narration length at 130, 150 and 170 WPM. It also shows roughly how many characters a TTS tool will bill.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://ai.infinityme.dev/tools/ai-voice-pricing-comparison/" rel="noopener noreferrer"&gt;AI Voice (TTS) Pricing Comparison&lt;/a&gt;&lt;/strong&gt;: enter N characters (or minutes) per month and it estimates the monthly cost across ElevenLabs, Murf API, WellSaid, Google Cloud TTS and Azure, cheapest first.&lt;/p&gt;

&lt;p&gt;There is more in the hub: &lt;a href="https://ai.infinityme.dev/tools/" rel="noopener noreferrer"&gt;https://ai.infinityme.dev/tools/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How it's built
&lt;/h2&gt;

&lt;p&gt;It's a static Next.js export, and everything runs client-side. The text you paste never leaves your browser, and I don't track it. No signup, no accounts, no affiliate links in these tools.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lessons learned
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Pricing pages change constantly.&lt;/strong&gt; Hardcoding numbers in components went stale fast. Now every price lives in one data file, each entry with a "checked" date, and the page shows that date. Updating means editing one file.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Characters vs minutes billing confuses people.&lt;/strong&gt; Some providers bill per character, others sell plans in minutes or credits. I had to pick a conversion (about 1,000 characters per minute) and state it clearly, otherwise comparisons look misleading.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Estimates need honest margins.&lt;/strong&gt; Real recordings include pauses and retakes, and regenerating a line costs characters again. The tool gives a number, but you should leave some slack.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Feedback welcome
&lt;/h2&gt;

&lt;p&gt;If something looks off, or a price is outdated, tell me. Which TTS provider should I add next? Tell me in the comments, and tell me what else would make these useful for your workflow.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>showdev</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Estimating ElevenLabs Costs for an Automated Video Pipeline (2026)</title>
      <dc:creator>Jaden Vo</dc:creator>
      <pubDate>Tue, 20 Oct 2026 17:08:28 +0000</pubDate>
      <link>https://dev.to/jadenvo259/estimating-elevenlabs-costs-for-an-automated-video-pipeline-2026-58i8</link>
      <guid>https://dev.to/jadenvo259/estimating-elevenlabs-costs-for-an-automated-video-pipeline-2026-58i8</guid>
      <description>&lt;p&gt;If you generate voiceovers programmatically, "which plan?" is really a capacity-planning question. Here's how I size ElevenLabs plans, using the official pricing page (checked October 20, 2026).&lt;/p&gt;

&lt;h3&gt;
  
  
  Units
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;1 character ≈ 1 credit (standard multilingual TTS). Flash/Turbo models are discounted for API use (0.5–1 credit/char).&lt;/li&gt;
&lt;li&gt;~1,000 characters ≈ 1 minute of narration.&lt;/li&gt;
&lt;li&gt;One credit pool is shared by TTS, STT (≈330 credits/min), sound effects (≈200/generation), voice changer and isolator (≈1,000/min) and dubbing (2,000–10,000/min, depending on mode).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Quick estimator
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// rough monthly credit estimate&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;est&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="nx"&gt;videosPerMonth&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;minutesPerVideo&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;retakeFactor&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;1.3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sfxPerVideo&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="p"&gt;})&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;
  &lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;ceil&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;videosPerMonth&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;minutesPerVideo&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;retakeFactor&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;sfxPerVideo&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;

&lt;span class="nf"&gt;est&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="na"&gt;videosPerMonth&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;minutesPerVideo&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;sfxPerVideo&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt; &lt;span class="c1"&gt;// ≈ 56,000 → Creator (121k)&lt;/span&gt;
&lt;span class="nf"&gt;est&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="na"&gt;videosPerMonth&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;20&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;minutesPerVideo&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;                 &lt;span class="c1"&gt;// ≈ 26,000 → Starter (30k)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Plans (monthly / annual-equivalent)
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Plan&lt;/th&gt;
&lt;th&gt;Monthly&lt;/th&gt;
&lt;th&gt;Annual/mo&lt;/th&gt;
&lt;th&gt;Credits&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Starter&lt;/td&gt;
&lt;td&gt;$6&lt;/td&gt;
&lt;td&gt;$5&lt;/td&gt;
&lt;td&gt;30k&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Creator&lt;/td&gt;
&lt;td&gt;$22 (first month $11)&lt;/td&gt;
&lt;td&gt;$18.33&lt;/td&gt;
&lt;td&gt;121k&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pro&lt;/td&gt;
&lt;td&gt;$99&lt;/td&gt;
&lt;td&gt;$82.50&lt;/td&gt;
&lt;td&gt;600k&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Scale&lt;/td&gt;
&lt;td&gt;$299&lt;/td&gt;
&lt;td&gt;$249.17&lt;/td&gt;
&lt;td&gt;1.8M&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Things that affect your bill
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Rollover:&lt;/strong&gt; unused credits on paid plans roll over for up to 2 months (max balance 3× quota). Downgrading or cancelling forfeits them, so drain the balance before you switch plans.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Per-generation charging:&lt;/strong&gt; you pay per request, not per download, so cache aggressively and regenerate only changed chunks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Commercial licence:&lt;/strong&gt; the Free tier is non-commercial. Any monetized output needs Starter or above.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audio format:&lt;/strong&gt; 44.1 kHz PCM via the API starts on Pro. If your pipeline needs uncompressed output, factor that in.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Recommendation
&lt;/h3&gt;

&lt;p&gt;Prototype on Free, run production on Starter or Creator depending on your estimator output, and switch to annual billing once your usage has been stable for 2–3 months.&lt;/p&gt;

&lt;p&gt;Full plan-by-plan breakdown: &lt;a href="https://ai.infinityme.dev/blog/elevenlabs-pricing-explained/" rel="noopener noreferrer"&gt;ElevenLabs Pricing Explained (2026)&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>automation</category>
      <category>api</category>
      <category>budget</category>
    </item>
    <item>
      <title>ElevenLabs vs Murf AI for Developers (2026): API, Pricing and a TTS Pipeline for Video</title>
      <dc:creator>Jaden Vo</dc:creator>
      <pubDate>Tue, 20 Oct 2026 11:33:45 +0000</pubDate>
      <link>https://dev.to/jadenvo259/elevenlabs-vs-murf-ai-for-developers-2026-api-pricing-and-a-tts-pipeline-for-video-2j68</link>
      <guid>https://dev.to/jadenvo259/elevenlabs-vs-murf-ai-for-developers-2026-api-pricing-and-a-tts-pipeline-for-video-2j68</guid>
      <description>&lt;p&gt;I automate voiceovers for video content, so I compared ElevenLabs and Murf AI the way a developer would: pricing model, API, output formats and how each fits into a script-to-audio pipeline. All prices are from the official pricing pages, checked October 20, 2026.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pricing models are different, and that changes your architecture
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;ElevenLabs&lt;/strong&gt; sells subscription plans with a monthly credit pool shared across every product (TTS, speech-to-text, sound effects, dubbing). For its standard multilingual TTS models, 1 character ≈ 1 credit. The pricing FAQ says the Flash/Turbo models get discounted API pricing, at 0.5–1 credit per character.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Plan&lt;/th&gt;
&lt;th&gt;$/month&lt;/th&gt;
&lt;th&gt;Credits&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Free&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;10k&lt;/td&gt;
&lt;td&gt;Non-commercial&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Starter&lt;/td&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;30k&lt;/td&gt;
&lt;td&gt;Commercial licence, Instant Voice Cloning&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Creator&lt;/td&gt;
&lt;td&gt;22&lt;/td&gt;
&lt;td&gt;121k&lt;/td&gt;
&lt;td&gt;Professional Voice Cloning&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pro&lt;/td&gt;
&lt;td&gt;99&lt;/td&gt;
&lt;td&gt;600k&lt;/td&gt;
&lt;td&gt;44.1 kHz PCM output via API, 192 kbps&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Unused paid credits roll over for up to 2 months (capped at 3× your quota) while you stay subscribed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Murf&lt;/strong&gt; prices its API as pay-as-you-go: &lt;strong&gt;$0.01 / 1k chars&lt;/strong&gt; for Falcon (built for real-time voice agents) and &lt;strong&gt;$0.03 / 1k chars&lt;/strong&gt; for studio-quality TTS. You get $10 of free credit, and purchased credit doesn't expire. The pricing page lists up to 5 concurrent requests on standard plans.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What this means in practice:&lt;/strong&gt; for spiky, high-volume batch jobs, Murf's pay-as-you-go model is easy to budget. For a steady weekly pipeline where you also want cloning, sound effects or dubbing, an ElevenLabs subscription gives you more per dollar of tooling.&lt;/p&gt;

&lt;h3&gt;
  
  
  A minimal pipeline pattern
&lt;/h3&gt;

&lt;p&gt;Whichever vendor you use, the shape is the same:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;script.md
  → split by paragraph (keeps regenerations cheap: you pay per generation)
  → normalize text (numbers, acronyms, phonetic names)
  → TTS per chunk (cache by hash of text + voice + settings)
  → concat + loudness-normalize (ffmpeg loudnorm)
  → export WAV/MP3 for the editor
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Two tips that save real money:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Hash-based caching.&lt;/strong&gt; Key each chunk on &lt;code&gt;sha256(text + voice_id + settings)&lt;/code&gt;. Fix one typo and only that chunk regenerates.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Chunk by paragraph, not by sentence.&lt;/strong&gt; Sentence-level chunks lose prosody across boundaries, while whole-script generation makes every fix expensive.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Quality and features
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Expressiveness:&lt;/strong&gt; ElevenLabs is generally more natural for narration and emotion. Murf sounds like a clean, neutral presenter.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cloning:&lt;/strong&gt; ElevenLabs offers Instant from Starter and Professional from Creator. Murf lists Professional Voice Cloning under Enterprise.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Languages:&lt;/strong&gt; ElevenLabs' plan table lists 74 TTS languages. Murf lists 150+ voices across 35+ languages for its API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Studio/timeline:&lt;/strong&gt; Murf's web Studio is better for syncing narration to slides. ElevenLabs' Studio targets long-form audio.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Verdict
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Building a &lt;strong&gt;content pipeline&lt;/strong&gt; (YouTube, podcasts, audiobooks) and want the best voices and cloning: &lt;strong&gt;ElevenLabs&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Building a &lt;strong&gt;voice agent or high-volume TTS feature&lt;/strong&gt; on a pay-as-you-go budget: benchmark &lt;strong&gt;Murf's Falcon&lt;/strong&gt; too.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The full comparison (tables, FAQ, non-dev considerations) is here: &lt;a href="https://ai.infinityme.dev/blog/elevenlabs-vs-murf/" rel="noopener noreferrer"&gt;ElevenLabs vs Murf AI (2026)&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>api</category>
      <category>tts</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
