Instaread Audio Player — Text-to-Speech & Article-to-Audio

Description

Instaread Audio Player converts your WordPress articles, blog posts, and pages into natural-sounding audio and embeds an audio player on your content. The plugin is provided at no cost to publishers; Instaread operates on an ad-supported model, where revenue is generated through optional audio advertising and shared with the publisher.

The plugin is intended for publishers who want to add an audio version of their text content to improve accessibility and offer an alternative way to consume articles.

Features

  • Automatic text-to-speech conversion for posts, pages, and custom post types
  • Embedded audio player with waveform visualizer
  • Color and style customization to match your site’s branding
  • Voice library with multiple natural-sounding voices; voice cloning available on request
  • Site-specific pronunciation dictionary for proper nouns and brand names
  • Analytics dashboard with listener metrics
  • Audio podcast feed generation for distribution to podcast platforms
  • Playlist support for serialized content
  • Subscribe-to-listen flow for paywalled content
  • Optional ad suppression for logged-in subscribers
  • Works with standard WordPress themes
  • Compatible with major page builders (Elementor, Divi, Beaver Builder, Gutenberg)
  • Mobile-responsive player layout
  • Asynchronous player loading — does not block page rendering

How It Works

  1. Install and activate the Instaread Audio Player plugin
  2. Connect your site through the onboarding wizard
  3. Choose your voice, customize the player appearance, and add the required ads.txt lines
  4. Submit your site for approval
  5. Once approved, your articles are converted to audio and the player appears on every post

Who Is This For?

  • News publishers who want to offer an audio version of their articles
  • Bloggers who want to make content accessible to audio-first audiences
  • Content-heavy websites looking to add audio without a separate production pipeline
  • Magazine and media sites that want an audio version of their archive

Pricing and Monetization

The plugin is provided at no cost to publishers. Instaread’s revenue comes from optional audio advertising played within the audio stream; publishers receive a share of that revenue.

Configuration Guide

Admin Dashboard

After activation, the Instaread menu appears in the WordPress admin sidebar. All settings are managed through a locally-rendered admin interface — no iframes, no external page loads in the admin.

Step 1 — Register Your Site

Fill in:
* Website Name — your publication name
* Homepage URL — your site’s root URL (e.g. https://example.com)
* Email Address — for account notifications

Step 2 — Choose a Voice

  • Browse the voice library and click the play button to preview any voice
  • Select one or more voices — the system will alternate between them
  • Browse the available voices and choose the ones that best fit your publication

Step 3 — Configure the Player

  • Player Design: Choose from Acoustic Player (waveform visualizer), Compact Acoustic, or Compact
  • Player Color: Set the primary accent color to match your branding
  • Player Label: Defaults to “Listen to this article” — customize as needed
  • Waveform Colors, Timestamps Color, and Advertisement Text are available depending on design
  • A live preview updates instantly as you change settings — no need to save first

Step 4 — Set Player Position

  • Default Position (recommended): Player is injected above .entry-content automatically
  • Custom Position: Enter a CSS selector (e.g. .article-body) and choose above or below

Step 5 — Submit for Approval

Click Submit for Approval. You will be taken to a confirmation screen that shows:
* Your submission status (pending accepted)
* The ads.txt content you must add to your domain

Step 6 — Add ads.txt

Instaread requires ads.txt entries to serve audio ads. Add the provided lines to your domain’s /ads.txt file. You can:
* Edit the file manually at https://yourdomain.com/ads.txt
* Use the free Ads.txt Manager WordPress plugin (recommended)

The confirmation screen shows a live verification indicator — green when detected correctly.

Step 7 — Approval and Go-Live

Once Instaread verifies your ads.txt and approves your site, audio generation begins automatically. New posts are converted within minutes of publishing. Your full archive is also converted at no additional cost.

Approval typically happens within a few hours of submission. After approval, additional settings pages unlock in the admin sidebar:
* Voice Selection — change or add voices
* Audio Player — update player design and colors
* Position — change player placement
* Manage Posts — include/exclude posts by date or category
* Pronunciation — add custom pronunciations for brand names or proper nouns
* Ads — view and copy your ads.txt configuration
* Analytics — view listener metrics (plays, duration, geography)

Testing the Plugin

For WordPress.org Reviewers

The plugin has two distinct phases: before approval (configuration only) and after approval (player active on posts).

To test the admin interface:

  1. Install and activate the plugin
  2. Click Instaread in the admin sidebar
  3. You will see the setup wizard — fill in any website name, URL, and email to explore the interface
  4. Use the voice library to preview voices (click the play button next to any voice)
  5. Change the player design, colors, and label — the live preview updates instantly without saving
  6. The admin UI is a locally-rendered React application — no iframes, no external page loads in the admin

To test with a live account:

  1. Complete the registration form with real site details and submit
  2. Add the provided ads.txt lines to your domain
  3. After submitting, visit any post on the front end — a player placeholder (“Audio coming soon”) appears immediately on all posts, confirming the plugin is injecting correctly
  4. Once Instaread approves your site, audio is generated for your articles and the placeholder is replaced with a fully playable audio player
  5. Click play to hear the article read aloud

Note for reviewers: The player widget is injected on posts immediately after activation — you will see it on the front end right away showing “Audio coming soon”. Audio generation requires a one-time Instaread approval (to prevent abuse of TTS resources). The admin UI, player preview, voice previews, and all settings pages are fully functional without approval.

External Services

Instaread Audio Player connects to external services operated by Instaread (https://instaread.co).
By installing this plugin, you agree to the Instaread Terms of Service and Privacy Policy.

External Service Disclosure

This plugin connects to Instaread’s external audio service. Instaread’s hosted service performs article-to-audio processing, audio hosting, player delivery, ad serving, analytics, and revenue-share reporting. These functions are not performed locally by the WordPress plugin.
When enabled by the site administrator, the plugin may send article URLs, article text, site domain, and basic playback/ad event data to Instaread for the purpose of generating audio, serving the audio player, measuring usage, and supporting ad monetization.
Use of the Instaread service is subject to Instaread’s Terms of Use (https://instaread.co/terms).

Instaread API (https://api.instaread.co)

Purpose: Plugin registration, hourly settings sync, activation/deactivation/deletion lifecycle signals, and voice metadata lookups (name, gender, accent) for voices selected by the site administrator.
Data sent: Site publication identifier, website URL, and (for voice lookups) the voice identifier the administrator selected. No reader, author, or post content is sent to this endpoint.
Terms of Service: https://instaread.co/terms
Privacy Policy: https://instaread.co/privacy

Instaread Player API (https://player-api.instaread.co)

Purpose: Submits article content for text-to-speech conversion each time a published post is saved.
Data sent: Article title, author, publication date, body content (plain text), article URL, featured image URL, and your site’s publication identifier.
Terms of Service: https://instaread.co/terms
Privacy Policy: https://instaread.co/privacy

Amazon S3 — Instaread Player Service (https://s3.us-east-1.amazonaws.com/instaread-scripts/)

Purpose: Delivers the Instaread audio player JavaScript as part of the Instaread service. This
is not an offloaded static asset — it is a per-publisher service bundle generated and maintained
server-side by Instaread. It cannot be included inside the plugin ZIP because:

  1. Every publisher receives a unique bundle compiled for their specific Instaread account.
  2. The bundle contains publication-specific configuration, monetization logic, voice model
    bindings, and audio delivery settings that are updated server-side without requiring a
    plugin update.
  3. There is no single file to bundle — the URL path (instaread.{publication}.js) is unique
    per publisher and resolved at runtime using the configured publication identifier.

This is the same model used by services such as Disqus, Wistia, and Mailchimp, which deliver
account-specific JavaScript bundles from their own servers. Instaread operates as a managed
text-to-speech and audio monetisation service; the JavaScript delivery is an integral part of
that service, not a convenience offload.

No personal user data is transmitted to this endpoint.
Amazon Web Services Privacy Policy: https://aws.amazon.com/privacy/

Data Sent Summary

  • Plugin activation: site URL and publication ID api.instaread.co
  • Post publish/update: article title, author, content, URL, image player-api.instaread.co
  • Hourly sync: publication ID api.instaread.co
  • Voice metadata lookup (on admin save of selected voices): voice identifier api.instaread.co
  • Plugin deactivation/deletion: publication ID api.instaread.co

Instaread does not use your content to train AI models. You retain all intellectual property rights.
See https://instaread.co/privacy for full details.

Source Code

The admin dashboard is a React (TypeScript) application compiled with Vite. To comply with the WordPress.org plugin directory’s human-readable code requirement, the full unminified source is included in this distribution alongside the compiled bundle:

  • Compiled bundle (loaded by the plugin): react-app/dist/js/index.js
  • Unminified source: react-app/src/
  • Build configuration: react-app/vite.config.ts, react-app/package.json, react-app/tsconfig.json

To rebuild the bundle from source:

cd react-app && npm install && npm run build

This regenerates react-app/dist/ with the same compiler settings used to ship the distribution (Vite + esbuild minification, console/debugger stripped).

Installation

  1. Upload the instaread-audio-player folder to the /wp-content/plugins/ directory, or install directly through the WordPress plugin installer by searching for “Instaread Audio Player”
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Go to Instaread in the WordPress admin sidebar — you will see the setup wizard
  4. Fill in your Website Name, Homepage URL, and Email Address
  5. Select one or more voices from the voice library (American English voices are pre-selected by default — you can preview any voice before choosing)
  6. Choose your Player Design (Acoustic Player is recommended), set your Player Color, and customize the player label
  7. Set the Player Position — “Default Position” places the player above article content automatically; “Custom Position” lets you target a specific CSS selector
  8. Configure Manage Posts — choose to enable audio on all posts, filter by date range, or exclude specific categories/URLs
  9. Click Submit for Approval — your settings are sent to Instaread for review
  10. Add the ads.txt lines shown on the confirmation page to your domain’s /ads.txt file (this is required before your account can be approved)
  11. Once Instaread approves your site, audio is generated for your articles automatically and the player appears on every post

Minimum Requirements

  • WordPress 5.0 or higher
  • PHP 7.0 or higher
  • An active internet connection (audio is generated via Instaread’s cloud service)

FAQ

Why does the player show “Audio coming soon” on my posts?

After submitting the registration form, a player placeholder appears on all your posts immediately. The placeholder changes to a fully playable audio player once Instaread approves your site and generates the audio files — this typically happens within a few hours of submission. No additional steps are needed on your end after submission.

How much does the plugin cost?

The plugin is provided at no cost to publishers. Instaread generates revenue through optional audio advertising and shares a portion with the publisher.

Do I need an API key or external account?

The plugin handles onboarding for you. Simply install, activate, and follow the setup wizard to connect your site.

What voices are available?

Instaread offers a library of natural-sounding AI voices across multiple languages and accents. Voice cloning is also available on request.

How quickly are articles converted to audio?

New content is typically converted within minutes of publishing. When you first install the plugin, your existing article archive is also converted.

Will this slow down my website?

The audio player loads asynchronously after the page has rendered, so it does not block page rendering.

Does Instaread work with my theme?

The player is designed to work with standard WordPress themes, including themes built with Elementor, Divi, Beaver Builder, and the default block editor.

Can I customize the player’s appearance?

Yes. You can change colors, select from multiple player styles, and position the player where you want on the page.

I have paywalled content. Can I restrict audio access?

Yes. Instaread offers a “Subscribe to Listen” feature that restricts audio playback to subscribers or logged-in users.

Can I suppress ads for paying subscribers?

Yes. Audio ads can be suppressed for logged-in subscribers so they get an ad-free listening experience.

Who owns the audio files?

You do. Instaread stores and serves the files, but you retain full ownership. If you cancel the service, your audio files are deleted from our servers.

Do you use my content to train AI models?

No. You retain all intellectual property rights. Instaread does not use your content to train AI or machine learning models.

Does this help with accessibility compliance?

Adding an audio version of your articles can help meet WCAG and ADA accessibility guidelines by providing an alternative way to consume content for users with visual impairments or reading difficulties.

Can I distribute my audio as a podcast?

Yes. Instaread can generate a podcast RSS feed from your audio content, allowing you to distribute it to Apple Podcasts, Spotify, Google Podcasts, and other platforms.

Do you provide analytics?

Yes. You get access to a detailed analytics dashboard with listener counts, play duration, geographic data, and more.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Instaread Audio Player — Text-to-Speech & Article-to-Audio” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.0.2

  • Clarified that the plugin is not Trialware/Serviceware: there is no license key check, no paid unlock, and no local plugin feature is disabled behind a payment, trial, quota, or license. The plugin connects to Instaread’s external service, which performs the core functionality (article-to-audio processing, audio hosting, player delivery, ad serving, revenue-share reporting) outside of WordPress.
  • Removed “Submit for approval” wording that could imply local plugin functionality is locked; the call-to-action is now “Connect to Instaread”.
  • Removed payment, revenue-share, and marketplace-style terms from the plugin settings screen.
  • External services: added an “External Service Disclosure” section to readme.txt and an in-dashboard authorization notice describing what data is sent to Instaread and why. No new endpoints were added.
  • Front-end injection is now fully admin-controlled: the partner script, wrapper markup, and player element are injected only when the site administrator enables the “Show Audio coming soon” setting; otherwise post content is returned unchanged.
  • Layout stability: when shown, the player slot reserves a fixed per-design min-height (responsive desktop/mobile) to avoid cumulative layout shift; the per-post loader script is emitted inline alongside its slot for reliable loading.
  • Voice selection: removed promotional tier/pricing wording from the admin UI.

1.0.1

  • Distribution: include the unminified React/TypeScript source (react-app/src/, vite.config.ts, package.json, tsconfig.json) alongside the compiled bundle, so the plugin ships with a human-readable counterpart to the minified admin asset.
  • Documentation: added a “Source Code” section to readme.txt with the build command and pointers to the source files.
  • External services: disclosed the voice-metadata lookup endpoint (api.instaread.co /v1/wordpress/admin/voices/{id}) used when administrators select voices in the dashboard.
  • Admin: load the React admin bundle as an ES module so the dashboard mounts correctly across modern browsers (resolves “Loading Instaread admin…” never disappearing on some sites).
  • Admin: surface a clear error notice if the bundled assets are missing, instead of leaving an indefinite loading state.
  • PHP 8.1+ compatibility: cast nullable post fields before string functions (strtotime, trim, preg_split, rtrim) to silence deprecation notices under WP_DEBUG.
  • Hardened API response handling in voice sync against non-array payloads (array_merge type errors).
  • Defensive guards around DOMXPath query results in custom-position injection.

1.0.0

  • Initial release
  • Automatic article-to-audio conversion
  • Customizable embedded audio player with waveform visualizer
  • Voice selection and voice cloning support
  • Audio ad monetization with publisher revenue share
  • Archive conversion on activation
  • Analytics dashboard
  • WCAG/ADA accessibility support
  • Compatible with major page builders and themes