So today I took the plunge and ended up getting an Elevenlabs creator subscription to try out their Audio Native Tool along with their voice cloning feature to provide some vocal narration on my blog.

Note: As of 2/23/2025, Elevenlabs has recently updated their Audio Native Tool workflow, and some of the information provided in this post is outdated, I will try to post a followup that covers these changes in the future.
There have been some hiccups along the way, but overall here is my review of the tool and my experience with it so far.
To begin, the creator tool is a bit on the pricey side (around 19 bucks a month at a yearly subscription rate), but this is the minimum tier required to access the Audio Native Tool (amongst other goodies).
Honestly, considering the other alternatives out there (most of which are self-hosted nightmares), it is not that bad for something that is cloud-based and works out of the box.
The tool itself is pretty straightforward to use as everything is web-based.
So I started my adventure by opening up Audacity and recording myself reading the About page on the blog until I had around 8 minutes of audio that I exported as an MP3 file.
Note: Elevenlabs has a 10 MB size limit on audio files for the basic voice cloning feature, and I found myself having to edit my recording to get the file under this threshold.
Voice Cloning
From here I went under the Voices section of their website


and added a new voice via clicking the Add a New Voice button.

I then selected the instant voice cloning option

and uploaded my recorded MP3 file of my reading, while also filling out some additional information about the voice.


Just like that, I had a new voice based on my own voice that I could use for reading blog posts or other content (very cool).
It seems like there is also a professional voice cloning option that is available that will accept around 30 minutes of audio (not sure what the upper limit is on this).
Also, it looks like there is a limit of one professional voice but up to 30 for instant voices (But I haven’t tested this attribute out yet).
Audio Native Tool

At this point I wanted to test out the Audio Native Tool, which was hidden under the Audio Tools menu tab.

I then went through the configurations section of the Tool and configured it to use my voice for the narration.

I also set up the embedded player background color to match the blog website


and defined the url allowed list

to only include access via my blog domain.
Once you have everything configured, the site will give you some embedded HTML code, and it’s up to you where you want the player to appear on your blog.
Note: you should be aware that the voice generation is based on the content of the blog post where the HTML player is embedded.
So if you don’t want every page of your site to have a voice player that reads the content, you will need to be selective about where your player HTML code is placed.
In my case I was able to extend my Jekyll Markdown to add a use ElevenLabs flag in the header. Then I was able to leverage the Liquid template engine to include the player only for posts that have this flag set.


My Foray Into The Audio Native Tool
Once I had everything set up, I opted to toggle my use ElevenLabs flag on the About page of the blog to test out the player.
Since the player is domain restricted, I had to push my changes to the live site to see the player in action (this is both a blessing and a curse).

Note: it doesn’t appear that you can authorize a local development server to use the player as it expects a live domain.
I haven’t really tested the allowed list features and all the limits yet, but I am going to assume a domain is required to use the player.
Once I was able to access the page on the live site, the embedded player appeared and started processing the page content since it was the first time it was being accessed.
Note: ElevenLabs uses credits to generate the audio narration the first time a page is accessed. Subsequent request are cached and don’t require additional credits to play
After a few minutes, the player appeared and started reading the content of the About page (much to my horror).
O.K. The overall initial audio created wasn’t that bad.
However, there were some hiccups in the reading when it came to HTML headers or lists that resulted in odd pauses.
Also, special characters like ellipsis and brackets created really odd audio effects (sometimes the volume would suddenly ramp up and scare if not deafen you).
Audio Problem Resolution
After encountering these issues, I went back to the Audio Native Tool section of the ElevenLabs website and found (under the page section of the Audio Native Tool)


that I could edit the audio created for the page.


I then went through the transcript of the audio (and this is a very cool feature) and made a number of edits where I added periods, commas, and other punctuation to help the voice flow better.

I also set changed heading types in the editor (in my case I opted for header 3) to reduce volume spikes.
Note: you can use the play-selected and play all button within the tool to ensure the audio created flows smoothly without any odd pauses or volume spikes.


After making these changes, my next problem was trying to get the player to use the revised audio.
How to Update The Audio
This is one area that ElevenLabs could improve on as it is very confusing and took me a while to figure out.
in fact, I’m not sure if I have the recipe fully down and optimal yet.

To update the audio of your blog post, you first need to go under the convert button at the top of the audio editor (Note the Audio Native Tool actually redirects you to the Project Tool when you try editing the audio).
Once you click the convert button, you will want to select the Convert Chapter option, and this will take you to a new chapter management page.

Note: it’s possible that you might, can skip the chapter conversion step and go straight to the project conversion, but I had issues with this
On this page you will want to click the convert button for the singular chapter that the audio narration tool created when it originally generated your audio post.

Once the chapter conversion is complete, you should click the version button to ensure you now have a new version of the audio chapter.


At this point you might think you are done, but you are not as you now need to navigate back to the audio project editor.
Now the back button might work to get you back, I have found myself sometimes needing to open a new browser tab and go back to the audio project page via the Audio Native Tool.
Once you are back on the audio project page, you click the convert button again and select the Convert Project option.

On this page you will want to click the convert button for the singular project that the audio narration tool created when it originally generated your audio post.
There is also a Convert Project Button at the top of this page you should also click (I think this is a key step I kept missing early on).


Once the project conversion is complete, you should click the version button (at the top) to ensure you now have a new version of the Project.

Note: if you don’t see the new version of the project, you need to try again or refresh the page, otherwise the subsequent steps won’t work.
At this point you can now go back to the audio project page via the Audio Native Tool and then press the gear icon next to the convert button.

This button should open a modal that will have a number of project settings that you can adjust.
From here you can select the publication button and then click the AudioNative option that will show the embed code for the player.

On this modal there will be a dropdown with the heading Published Version, and clicking this will show you a list of all the versions you have created (typically the latest version will be at the top).

At this point you can select the version you want via clicking the publication button.


Now you can go back to your blog post, refresh the page, test the audio player, and see if your changes have taken effect.
as you can see, this is a very convoluted process, and I hope ElevenLabs works to streamline this in the future.
The Cost of Audio Narration
Now that I had a properly edited audio narration, I opted to test this process on a few other blog posts.

Collectively, I generated around 492 seconds of audio (or 8 minutes and 12 seconds) and used around 17,053 credits of my monthly 110 thousand creative subscription credit allotments.
The creative subscription comes with 110 thousand credits a month (or 100 minutes of audio), which translates to around 18 credits per second of audio (where floor math is in effect).
This works out to around 15 minutes of audio generation being needed to correct the 8 minutes of audio created by the Audio Native Tool.
Overall, this is not bad considering that I originally had no understanding of how the Markdown syntax would affect the audio generated, and I did make some grammar mistakes along the way as well.

Conclusion
At the end of the day, while there is a bit of a learning curve to get everything working and there are some quirks that Elevenlabs needs to work out.
I am optimistic and withhold any major judgment until I have had more time to play around with the tool.
Since I have a year subscription, I have plenty of time to experiment, and based on my blogging habits, I will see how well the credits last vs. the amount of post I generate.