← Blog · 30 August 2026 · Lire en français

Add an audio version to your HubSpot articles

HubSpot CMS has no server plugin directory, but audio drops in without touching your theme: custom HTML module, RSS feed or API. The three methods, step by step.

HubSpot CMS appeals to marketing and sales teams because it brings the blog, forms, email and CRM together in one place. The flip side is that it does not work like WordPress: there is no server plugin directory where you install a feature in one click. On WordPress you download the dedicated module and you are done. On HubSpot, adding an audio version of your articles goes through the front end, with no server back office to modify. The good news is that it is entirely doable, with no developer for the simple route, and without ever touching your portal's theme. Here are the three methods, from fastest to most automated.

The player: a custom HTML module in your article template

In HubSpot, every blog article is rendered by a template. That is where you act, once, so the player appears on all of your posts at once, present and future.

In the template editor, add a custom HTML module where you want the player to sit (right under the title, before the first paragraph, wherever suits you). This module holds a single line:

``
<script src="https://wedispatch.fr/player.js"
data-article="ARTICLE_ID" defer></script>
``

Because it lives in the template rather than inside each article, you paste it only once. Every new article inherits the player automatically. It is the same principle, without a plugin, as what we describe for a WordPress article without touching your theme: the component slots in next to the content, it does not rewrite it.

Linking the player to the right article

You still need to tell the player which audio matches which article. There are two approaches.

The first lets detection run off the page URL. You give us the address of the article, the text is pulled from the published page, and the audio is matched. Nothing to create in HubSpot.

The second, more robust, relies on a HubSpot blog custom field (an article property) that you bind to the data-article attribute. That gives you a stable identifier even if the URL changes during a redesign. Five minutes of setup, and no surprise the day you reorganise your categories.

Three ways to generate the audio

Showing the player is not enough: you still have to produce the file. On HubSpot, three routes.

The RSS feed is the simplest. HubSpot natively exposes a feed for each blog (the URL usually ends in /rss.xml). You send us that address, new articles are detected as they publish, the text is extracted and the audio generated with no action on your side. It is the ideal option for a team that wants to publish as usual and find the player online automatically. The detailed behaviour is described on the RSS feed page.

The sitemap approach follows the same principle if you would rather point at your site map, useful when some landing pages are not blog articles.

Finally, if you need control (generating audio at a specific moment, choosing the voice, handling corrections), the API stays open. HubSpot can trigger a call at publish time through a workflow wired to an automation tool like Make or Zapier. It is more work up front, but it hands you the whole chain, which appeals to teams already running their operations from HubSpot.

What the module writes, and what it leaves alone

An important point for a team that cares about a clean portal: the integration installs no server code in HubSpot, does not modify your theme and does not rewrite your articles. It adds a custom HTML module to a template, and optionally an article property if you choose the stable identifier. That is all. The day you switch HubSpot themes, the player follows the article template, and the migration breaks nothing on the audio side.

When an article changes

On HubSpot, republishing an article after an edit is common, especially when the content also feeds a campaign. If you go through the RSS feed, detection spots the update and flags the audio as "to regenerate": you relaunch generation once the text is stable, and successive corrections are never billed again. If you go through the API, just send the same external identifier with the corrected text. In both cases, the audio already online keeps being served until you relaunch, so no page is ever left without a player.

Where to start

For a HubSpot blog, the fastest route is the RSS feed combined with the custom HTML module in the template: fifteen minutes to set up, no server-side code, and every new article ships with its audio version. If you want fine control or stable identifiers, add an article property and the API. The logic is the same as on other platforms with no plugin, as we show for Webflow. The easiest way to decide is still to see the player running on your own pages: try it on one article and listen to the result before equipping the whole blog.

Give your articles a voice with WeDispatch

This blog is itself voiced by WeDispatch. Curious how it sounds on your content?

Book a demo

Read next