Text to Speech (TTS) by Mementor

Description

Text to Speech plugin for WordPress with natural AI voices, accessibility features, and SEO benefits. Includes 10,000 free credits.

Add Text to Speech to WordPress in Seconds

Text to Speech (TTS) turns your written content into natural, human-like audio. It makes your website accessible to everyone. Listeners, people with visual impairments, and those with learning differences all benefit.

The plugin uses ElevenLabs to produce lifelike speech that sounds warm and clear. No setup, API key, or coding is needed. Install it and start converting your WordPress posts into audio right away.

Text to speech keeps visitors on your page longer and raises engagement. Both of these factors can improve your SEO. The plugin follows WCAG 2.1, WCAG 2.2, and ADA accessibility standards.

PRO adds Speech-to-Text (STT) features. These are useful for transcription, captions, or converting podcasts and video into readable text.

Key Benefits

  • Instant setup with no API keys or external accounts needed. Install and start converting text to speech
  • Natural voices powered by ElevenLabs that produce clear, professional narration
  • Automatic, mobile-friendly audio player that fits any screen size
  • Accessibility ready with ARIA labels and keyboard support for screen readers and assistive devices
  • Better engagement and SEO signals as visitors spend more time on your pages
  • 10,000 free text-to-speech characters on activation so you can try it at no cost
  • Lightweight and built for performance with no impact on page speed or Core Web Vitals
  • Speech-to-Text transcription (PRO) to create written transcripts from your audio content

How It Works

  1. Install and activate the plugin from your WordPress dashboard
  2. Publish or update a post or page. Audio is generated from your content automatically
  3. A text-to-speech audio player appears on the page with no extra configuration
  4. Visitors can play, pause, adjust speed, or download the audio file

Video Walkthrough

Full walkthrough, features, and pricing:
https://mementor.no/en/wordpress-plugins/text-to-speech/

Why Choose This Text to Speech Plugin

Simple and Fast

  • No accounts, API keys, or coding needed. Install, activate, and your audio player is ready in seconds
  • Works with default settings so you can start converting text to speech right away

Natural Voices

  • Natural male, female, and multilingual voices that sound clear and professional
  • Pick from a wide range of tones and styles to match your brand and audience

Accessibility and Compliance

  • Fully compatible with WCAG 2.1 AA and ADA guidelines for web accessibility
  • Helps your website meet legal requirements by offering audio versions of written content

Theme and Page Builder Compatibility

  • Works with any theme or page builder, including Elementor, Gutenberg, Divi, Visual Composer, and all standard WordPress themes
  • No conflicts with popular plugins. Designed to fit smoothly into your existing setup

SEO Optimized

Audio players raise dwell time and send positive accessibility signals. Text to Speech PRO includes AudioObject schema for better search visibility.

Features

Free Features

  • 10,000 free characters to convert text to audio. Enough to get started without paying
  • Natural male and female voices in multiple languages for a professional listening experience
  • Automatic player for posts, pages, and WooCommerce products with no manual setup needed
  • Flexible player placement — before title, after title, after content, before excerpt, or after excerpt
  • Zero-click install. Activate the plugin and your audio player is ready
  • Mobile-first player with speed control and download so visitors can listen anywhere
  • Accessibility ready with ARIA labels and keyboard control for screen readers and assistive devices
  • Audio auto-updates when post content changes. No need to regenerate manually
  • Audio Library to browse, search, filter, and manage all generated audio files in one place
  • Statistics dashboard to track how many visitors listen to your content
  • Shortcode and block support for custom player placement anywhere on your site
  • Content filtering with CSS selectors or no-audio class to exclude specific sections from narration
  • Built for caching and performance plugins like WP Rocket, LiteSpeed Cache, and W3 Total Cache
  • Multisite support for managing text-to-speech across multiple WordPress sites from one network

PRO Features

  • 75,000 ElevenLabs audio credits per month for high-volume content production
  • 600+ voices across 70+ languages to match your audience worldwide
  • Premium 44.1 kHz audio quality for studio-grade narration
  • ElevenLabs v3 support for the latest and most natural-sounding voice technology
  • Speech-to-Text transcription to create written transcripts from audio
  • Bulk audio generation to convert multiple posts or pages at once
  • WooCommerce product narration. Let customers listen to product descriptions
  • Voice cloning with ElevenLabs Voice ID to create a custom brand voice
  • Word replacement and pronunciation correction for names, abbreviations, and technical terms
  • SSML support for fine-tuned control over speech output
  • Custom pauses to add natural breaks between sections, headings, or paragraphs
  • AudioObject schema for SEO. Structured data that helps search engines index your audio content
  • Custom intro and outro to add branding or disclaimers to every audio file
  • Media Library integration to show generated audio files as WordPress media attachments
  • WPML and Weglot multi-language voice mapping to assign different voices per language
  • Amazon S3 media offload to reduce server load and speed up audio delivery
  • Advanced analytics with detailed listening data per post, device, and location
  • White-label mode to remove plugin branding from the backend and the text-to-speech player
  • Priority support with faster response times from the development team

Supported Languages

Compatible with WPML, Polylang, TranslatePress, Weglot, and other translation plugins.

Text to Speech works in 70+ languages. Here are some of the most popular:

  • English (US, UK, AU): Text to Speech
  • Norwegian: Tekst til tale
  • Spanish: Texto a voz
  • French: Synthèse vocale
  • German: Text-to-Speech
  • Italian: Sintesi vocale
  • Portuguese: Texto para fala
  • Dutch: Tekst naar spraak
  • Polish: Zamiana tekstu na mowę
  • Turkish: Metinden sese
  • Russian: Преобразование текста в речь
  • Arabic: تحويل النص إلى كلام
  • Hindi: पाठ से वाक्
  • Bengali: টেক্সট টু স্পিচ
  • Chinese: 文字转语音
  • Japanese: テキスト読み上げ
  • Korean: 텍스트 음성 변환
  • Thai: แปลงข้อความเป็นเสียง
  • Vietnamese: Chuyển văn bản thành giọng nói
  • Indonesian: Teks ke suara

Accessibility and SEO Advantages

  • Meet WCAG 2.1 AA and ADA requirements by offering an audio version of written content
  • Raise average session time as visitors stay longer when they can listen instead of read
  • Help users with dyslexia, ADHD, or visual impairments with a hands-free listening option
  • Improve SEO with rich media and structured data that search engines can index and display
  • Create inclusive multilingual content that reaches audiences in their preferred language

Use Cases

  • Accessibility and inclusion. Make your website usable for people with reading difficulties or disabilities
  • Blogs and news. Let readers listen to articles while on the go
  • E-commerce product descriptions. Give shoppers the option to hear product details before buying
  • Education. Help students absorb course material through audio learning
  • Long-form content. Turn guides, reports, and documentation into easy-to-consume audio
  • Multitaskers. Serve visitors who prefer listening while commuting, exercising, or working
  • Content creators. Repurpose written content into audio format without extra recording effort

More Tools by Mementor

Standard Installation

  1. Go to Plugins Add New
  2. Search for “Text to Speech (TTS) by Mementor”
  3. Click Install Now and then Activate
  4. You receive 10,000 free characters instantly
  5. Optional: connect your ElevenLabs account or upgrade to PRO
  6. Adjust settings in Settings Text to Speech

Quick Start Guide

  • Automatic mode
  • Generator
  • My Stats
  • Player Settings
  • Content Rules
  • Analytics
  • Bulk Generation (PRO)

External Services

ElevenLabs API

Purpose: Converts your text into natural-sounding speech
Data sent: Post text, voice ID, API key (if used)
When: On manual or automatic audio generation
Storage: MP3 files saved locally or on S3
Limits: Free tier 10,000 characters per month, PRO 75,000 characters per month
Terms: https://elevenlabs.io/terms-of-use
Privacy: https://elevenlabs.io/privacy-policy

Mementor Software Licensing (Lemon Squeezy)

Handles checkout and license validation for PRO
Terms: https://mementor.no/en/terms-and-conditions/
Privacy: https://mementor.no/en/privacy/
Buyer terms: https://www.lemonsqueezy.com/buyer-terms
Privacy: https://www.lemonsqueezy.com/privacy

Privacy

Data Collection
This plugin collects usage statistics only if you opt in through the consent dialog in Settings. You can opt out anytime in Settings Advanced.

If you opt in, we collect:

  • Feature usage counts (generations, characters)
  • Plugin, PHP, and WordPress versions
  • Your site domain

We never collect:

  • Personal information or user data
  • Content of your posts or pages
  • API keys or passwords

Other Privacy Information

  • Content text sent for speech synthesis goes to ElevenLabs
  • API keys are stored encrypted in your database
  • Audio files remain on your server or configured S3 storage
  • Full data removal runs on uninstall if enabled in Advanced settings

Credits

Natural voice synthesis by ElevenLabs
Developed by Mementor Webdesign & Digitalt Markedsføringsbyrå AS

This plugin includes an affiliate link to ElevenLabs. If you purchase through this link, Mementor may earn a small commission at no extra cost to you.

Screenshots

  • Dashboard with an overview of your text-to-speech settings, ready to generate audio with one click
  • Audio player added to posts automatically with no manual placement needed
  • Voice and language selector. Choose from natural male and female voices in multiple languages
  • Mobile-ready player with responsive design that works on any device and screen size
  • Engagement analytics. Track how many visitors listen to your audio content
  • Shortcode and block generator. Place the audio player anywhere on your site
  • Audio settings panel. Configure playback options, voice selection, and content filters
  • White-label branding options. Remove plugin branding from the backend and the player
  • Speech-to-Text transcription interface. Create written transcripts from your audio files

FAQ

Do I need an API key for text to speech?

No. You get 10,000 free characters automatically. When they run out, connect your ElevenLabs key or upgrade to PRO.

Is the text to speech player WCAG compliant?

Yes. All audio controls include ARIA labels, keyboard navigation, and color-contrast support.

Which languages does text to speech support?

The free plan supports 32 languages. PRO unlocks 70+ languages and 600+ voices.

Does text to speech work with Elementor, Divi, or Gutenberg?

Yes. It works with all popular page builders and standard WordPress themes.

Can I bulk-convert existing posts to audio?

Yes. Upgrade to PRO and use the Bulk Generate tool.

Will text to speech slow down my site?

No. The player is lazy-loaded and works with caching plugins.

Can I use my own voice?

Yes. PRO users can enter their custom ElevenLabs Voice ID.

What happens when I run out of credits?

Existing audio stays playable. New audio will not generate until credits renew or you upgrade to PRO.

Reviews

11 Septambra 2025 1 reply
Initially, I was sceptical, the number of different names, the lack of documentation etc. But I emailed support, and OMG Thomas was amazing. Fixed my initial support question overnight. I emailed back and suggested a few enhancements, and lo and behold the very next day 95% of them were implemented. You CANNOT get better support than that.
25 Jolay 2025 1 reply
I had some issues, the plugin did not support my builder, but it got fixed really quick. Plugin works great, does exactly what it supposed to.
25 Aprily 2025 1 reply
I’ve been testing this plugin on my WordPress site, and I’m really impressed. The setup was incredibly easy, even for someone without a technical background. Within minutes, I had high-quality audio versions of my posts ready to go. Highly recommened!
Read all 5 reviews

Contributors & Developers

“Text to Speech (TTS) by Mementor” is open source software. The following people have contributed to this plugin.

Contributors

“Text to Speech (TTS) by Mementor” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “Text to Speech (TTS) by Mementor” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

3.0.2 – 2026-03-25

  • Fixed: Save settings button not working on all admin pages (White Label, Advanced, Player, Voices, Content, PRO Support)
  • Fixed: No confirmation message shown after saving settings on pages with custom form handlers
  • Improved: Audio Library now shows a toast notification when audio is successfully regenerated

3.0.1 – 2026-03-25

  • Improved: Generated audio files now use the post title in the filename (e.g. the-headline-14-en.mp3 instead of mementor-14-en.mp3). Existing audio is not affected
  • Improved: Comprehensive security hardening — added nonce verification, output escaping, input sanitization, and prepared statements across all admin pages and AJAX handlers
  • Improved: Settings import now validates option names against a whitelist to prevent unauthorized writes
  • Improved: Complete plugin cleanup on uninstall — all database tables, options, transients, and cron jobs are now properly removed
  • Improved: Deactivation now clears all scheduled cron events to prevent orphaned tasks
  • Improved: Cron scheduling moved out of class constructors to reduce overhead on frontend page loads
  • Improved: Infrequently used options (DB versions, timestamps) no longer autoload on every request
  • Improved: All PHP files now include direct access protection
  • Improved: Removed duplicate AJAX handler registrations and dead code
  • Fixed: Wrong text domain in several translation strings preventing proper localization
  • Fixed: Audio player showing a “Generate Audio” button on posts that already have audio
  • Fixed: Shortcode player rendering on the frontend even when no audio file exists
  • Fixed: Auto-inserted player rendering with a pending state instead of being hidden when no audio is available
  • New: Bulk rename in Audio Library — rename old-format filenames (mementor-ID-lang.mp3) to use the current post title
  • New: Bulk download in Audio Library now creates a single zip file when multiple files are selected
  • Fixed: Frontend audio player now uses post meta as the authoritative source for audio URLs, preventing stale references after file renames
  • Fixed: Duplicate AudioObject schema markup when multiple player instances exist on a page
  • Fixed: Audio Library play counts now include today’s events instead of only showing aggregated historical data
  • Fixed: Regenerating audio with Media Library enabled deleted the newly saved file due to attachment cleanup race condition
  • Fixed: Deleting audio from the post list now properly removes the Media Library attachment and physical file
  • Fixed: Post list audio detection and deletion now uses post meta URLs instead of hardcoded filename patterns
  • Fixed: Speech builder caching DELETE query results which could mask errors
  • Fixed: N+1 database query in statistics page running SHOW TABLES inside a loop
  • Fixed: Audio file saving now always uses WP_Filesystem API instead of falling back to raw PHP functions

3.0.0 – 2026-03-25

Redesigned Admin Interface

  • New: Sidebar navigation replaces horizontal tab navigation for faster access to all plugin pages
  • New: Universal card-based design system with consistent styling across every admin page
  • New: Design tokens (CSS custom properties) for colors, spacing, typography, and component styles
  • New: SVG speaker icon in the WordPress admin menu and plugin sidebar
  • New: Global input styling with improved contrast, visible borders, and purple focus states

New Pages

  • New: Audio Library page — browse, search, filter, sort, and manage all generated audio files with inline playback and bulk actions (select, delete, download)
  • New: Add More Credits page — view available credit tiers with a dedicated sidebar CTA button
  • New: Documentation page under System & Help

Redesigned Pages

  • Redesigned: Voices page — card-based voice list with filters, compact audio settings grid, and copy Voice ID on hover
  • Redesigned: Player page — sticky live preview, two-panel controls and colors layout, organized sizing and spacing
  • Redesigned: License page — sales page with feature cards and Lemon Squeezy overlay checkout for free users, streamlined license management for PRO users
  • Redesigned: PRO Support page — support form with info sidebar in a two-column layout
  • Redesigned: Statistics, My Stats & Voices, Advanced, Affiliate, and White Label pages — all converted to the new design system

Other Improvements

  • New: PRO plugin update notification in the sidebar when a new version is available
  • New: Review tracking — footer updates after clicking the review link
  • New: White Label enhancements — SVG logo upload support and the ability to hide Documentation, Add More Credits, and PRO Support menu items
  • Improved: Checkbox styling with purple checkmark on white background
  • Improved: Footer with review link and “Built with” branding

2.1.2 – 2026-03-20

  • Added: Show in Media Library (PRO) — generated audio files are registered as WordPress media attachments when enabled in Settings
  • Added: Retroactive sync — turning the setting ON automatically adds all existing audio files to the Media Library
  • Added: Shortcode audio files are included in the Media Library as unattached media items
  • Added: Media attachments are automatically cleaned up when TTS audio is deleted or regenerated
  • Added: WPML-aware media — audio attachments inherit the language of their parent post
  • Fixed: PRO update download link in the Settings header now uses the versioned URL instead of a hardcoded path

2.1.1 – 2026-03-20

  • Added: WooCommerce Product Audio — configure which product fields (title, price, stock, category, image text, descriptions) are included in generated audio
  • Added: Product-specific player placement — choose before/after short or long description independently from the global player position
  • Added: Product player label override — hide or customize the player label on product pages
  • Added: Product text templates — configurable format strings for price, sale price, stock status, and category for multilingual support
  • Added: TTS-friendly price formatting — prices are spoken naturally (e.g. “95 dollars” instead of “$95.00”), supports 16 currencies
  • Added: Block theme support for WooCommerce product player using the render_block filter as fallback when classic hooks don’t fire
  • Added: WPML multi-language voice support — assign different voices per language alongside existing Weglot integration
  • Improved: Post list TTS column now uses custom SVG icons instead of WordPress dashicons for a cleaner, more polished look
  • Improved: Inline audio playback in the post list — clicking play now plays audio directly instead of opening the file in a new tab
  • Improved: Modern tooltips on post list TTS action buttons replace the default browser tooltips
  • Improved: TTS column is now always placed immediately after the Title/Name column, regardless of other plugins
  • Improved: TTS column no longer forces width on other columns — WordPress handles the natural table layout
  • Improved: “Text to Speech (TTS)” label is available in Screen Options for toggling the column visibility

2.1.0 – 2026-03-06

  • Added: Per-license PRO credit limit system
  • Added: PRO credit usage included in support form submissions for faster troubleshooting

2.0.9 – 2026-03-06

  • Improved: Input sanitization on all AJAX nonce checks following WordPress best practices
  • Improved: Output escaping on dashboard stats, settings pages, and admin notices
  • Improved: Debug and error messages in the audio player no longer appear in the browser console unless debug mode is enabled
  • Fixed: JavaScript syntax errors in the shortcode player caused by partially removed debug code
  • Fixed: Replaced raw PHP redirects with wp_safe_redirect for safer admin navigation
  • Fixed: Database queries now use $wpdb->prepare where previously missing
  • Improved: Switched from json_encode to wp_json_encode across PHP files for better WordPress standards compliance
  • Improved: General code hardening across admin and public JavaScript files

2.0.8 – 2026-02-23

  • Moved: Extra credits add-on section relocated from free plugin to PRO plugin for consistent availability across all installations

2.0.7 – 2026-02-23

  • Added: “Before Excerpt” player placement option to display the audio player before the post excerpt
  • Added: “After Excerpt” player placement option to display the audio player after the post excerpt
  • Added: Elementor compatibility for excerpt placement via the elementor/widget/render_content filter on the Post Excerpt widget
  • Added: Broad theme compatibility for excerpt placement using both the_excerpt and get_the_excerpt WordPress filters
  • Fixed: Theme compatibility fallbacks no longer override excerpt-based placement with content-based injection
  • Added: Extra credits add-on system for PRO users needing more than 75,000 monthly credits (275K and 575K tiers)
  • Added: Stripe-powered purchase flow and license key activation on the License page

2.0.6 – 2026-02-22

  • Fixed: Elementor pages sending raw JSON structure data to the ElevenLabs API instead of actual text content
  • Fixed: [tts_player] shortcode displaying an audio player even when no audio is attached to the post
  • Improved: Elementor content extraction now recursively parses text editor and heading widgets from _elementor_data

2.0.5 – 2026-02-17

  • Fixed: Older articles using the WordPress “Read More” tag generating audio from only the first paragraph
  • Fixed: Page builders such as Fusion Builder and Elementor truncating content at the Read More tag during AJAX-based audio generation
  • Fixed: WordPress global more variable not being set correctly in AJAX context, causing incomplete content rendering
  • Improved: All content rendering paths now remove WordPress “more”, “nextpage”, and “noteaser” tags before processing
  • Improved: Full article content is now rendered consistently across single post, bulk generation, auto-generation, and shortcode methods

2.0.4 – 2026-02-17

  • Fixed: Credit usage tracking now reads the actual cost from the ElevenLabs API response instead of using text character count
  • Fixed: PRO credit counter now updates in real time after each generation
  • Improved: Credit tracking is accurate across all generation paths (single post, bulk, and shortcode)
  • PRO: All PRO license credit counters have been reset to 0 to compensate for previous over-counting

2.0.3 – 2026-02-10

  • Added: API key permission validation. Checks Text to Speech (Access), Speech to Text (Access), Sound Effect (Access), Audio Native (Read), Voices (Read), History (Read), and User (Read) when saving an API key
  • Added: Detailed permission status display with checkmarks/crosses for each permission when key has limited access
  • Added: Link to ElevenLabs API key settings page for users to fix missing permissions
  • Added: “Re-validate Permissions” button to re-check permissions after updating them on ElevenLabs
  • Added: Voice loading fallback to built-in shared API key when user’s key lacks Voices: Read permission
  • Fixed: API key validation now properly tells apart invalid keys from keys with missing permissions (ElevenLabs returns 401 for both)
  • Fixed: Speech to Text permission check now sends proper multipart request to trigger auth check
  • Improved: API key setup instructions updated with recommended minimum permissions
  • Improved: Permission notice stays on settings page as long as permissions are limited (not just a one-time flash)

2.0.2 – 2026-02-08

  • Fixed: PRO API key not being used for audio generation due to incomplete usage data parsing
  • Fixed: ElevenLabs API response fields read from wrong location in PRO usage check
  • Fixed: “Use My Own ElevenLabs API Key” setting ignored. PRO key was always used regardless of user preference
  • Fixed: PRO credits showing incorrect values (shared account totals instead of per-user allocation)
  • Fixed: “jQuery is not defined” error on frontend caused by WP Rocket delaying jQuery
  • Fixed: jQuery now excluded from WP Rocket delay/defer when TTS scripts are active
  • Fixed: Public JS moved to footer for better script loading order
  • Fixed: jQuery availability retry mechanism for cache plugins that defer scripts
  • Fixed: Missing unknown.svg gender icon causing 404 errors on Voices page
  • Fixed: Double slash in icon URL paths due to trailing slash in plugin URL constant
  • Improved: Error messages now displayed inline below the generator with high-visibility styling
  • Improved: ElevenLabs error messages (payment_required, quota_exceeded, sign_in_required) shown as readable text
  • Improved: Generic ElevenLabs API error messages passed through instead of generic “unknown error”
  • Improved: Error toast auto-hide extended from 3 to 8 seconds for better readability
  • Improved: JS cache-busting using file modification time to prevent stale scripts after updates

2.0.1 – 2026-02-05

  • Fixed: “jQuery is not defined” error on sites using script optimization plugins (WP Rocket, Autoptimize, LiteSpeed Cache, etc.)
  • Added: jQuery availability check with retry mechanism for deferred script loading
  • Added: Added custom voice sharing instructions on Voices page
  • Added: Link to ElevenLabs help article for voice sharing instructions
  • Improved: Script loading compatibility with caching and optimization plugins

2.0.0 – 2026-02-04

  • Full support for ElevenLabs Eleven v3 model (now generally available)
  • Added opt-in telemetry consent dialog
  • Telemetry now requires explicit user consent before collecting any data
  • Added telemetry opt-out toggle in Advanced settings
  • Improved telemetry module security architecture
  • Added dismissible “Leave a review” prompt in settings header

Previous Versions

Version 1.x included: S3 storage integration, Weglot multi-language support, content extraction improvements, credit usage tracking, language code mapping for 70+ languages, performance tuning, and many bug fixes. For full history, see the plugin’s GitHub repository.