Text to Speech - TTSWP 3.2.3

Does Text to Speech - TTSWP work with WordPress 6.9.4 and PHP 8.1.12? A smoke test was performed on .

Summary

Errors
9PHP warnings
13Unrecognized messages in the PHP error log
No JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance

Memory usage: 950.32 KiB
The average PHP memory usage increased by this amount after activating by the plugin.

Page speed impact: insignificant.
The plugin didn't make the site noticeably slower.

Environment
WordPress version6.9.4
PHP version8.1.12
MySQL version10.6.10
PHP memory limit512M
Plugin Info
Last updated
Active installs 100+
WordPress.org page https://wordpress.org/plugins/text-to-speech-tts/
Badges

WordPress compatibility badge PHP compatibility badge

Get badge code

Pages 20

Plugins ‹ Test site — WordPress

Page screenshot: Plugins ‹ Test site — WordPress
URL /wp-admin/plugins.php?plugin_status=all&paged=1&s
Requested URL /wp-admin/plugins.php?action=activate&plugin=text-to-speech-tts%2Ftext-to-speech-tts.php&plugin_status=all&paged=1&s&_wpnonce=62f97f4a2c
Aspect after-activation
HTTP status 200
Load time 0.582 s
Memory usage 4.84 MiB
JS errors None
Resource errors None

Text to Speech

Page screenshot: Text to Speech
URL /wp-admin/admin.php?page=text-to-speech-tts-settings
Aspect menu-item
HTTP status 200
Load time 0.558 s
Memory usage 5.02 MiB
JS errors None
Resource errors None

Text to Speech → Voices

Page screenshot: Text to Speech → Voices
URL /wp-admin/admin.php?page=text-to-speech-tts-voices
Aspect menu-item
HTTP status 200
Load time 0.460 s
Memory usage 4.93 MiB
JS errors None
Resource errors None

Text to Speech → Player

Page screenshot: Text to Speech → Player
URL /wp-admin/admin.php?page=text-to-speech-tts-player
Aspect menu-item
HTTP status 200
Load time 0.668 s
Memory usage 4.91 MiB
JS errors None
Resource errors None

Text to Speech → Content

Page screenshot: Text to Speech → Content
URL /wp-admin/admin.php?page=text-to-speech-tts-content
Aspect menu-item
HTTP status 200
Load time 0.595 s
Memory usage 4.79 MiB
JS errors None
Resource errors None

Text to Speech → Shortcode Generator

Page screenshot: Text to Speech → Shortcode Generator
URL /wp-admin/admin.php?page=text-to-speech-tts-generator
Aspect menu-item
HTTP status 200
Load time 0.527 s
Memory usage 4.95 MiB
JS errors None
Resource errors None

Text to Speech → Word Replacement

Page screenshot: Text to Speech → Word Replacement
URL /wp-admin/admin.php?page=text-to-speech-tts-word-replacement
Aspect menu-item
HTTP status 200
Load time 0.398 s
Memory usage 4.71 MiB
JS errors None
Resource errors None

Text to Speech → CSS Selectors

Page screenshot: Text to Speech → CSS Selectors
URL /wp-admin/admin.php?page=text-to-speech-tts-css-selectors
Aspect menu-item
HTTP status 200
Load time 0.373 s
Memory usage 4.71 MiB
JS errors None
Resource errors None

Text to Speech → Speech to Text

Page screenshot: Text to Speech → Speech to Text
URL /wp-admin/admin.php?page=text-to-speech-tts-speech-to-text
Aspect menu-item
HTTP status 200
Load time 0.403 s
Memory usage 4.75 MiB
JS errors None
Resource errors None

Text to Speech → My Stats

Page screenshot: Text to Speech → My Stats
URL /wp-admin/admin.php?page=text-to-speech-tts-my-stats-voices
Aspect menu-item
HTTP status 200
Load time 0.493 s
Memory usage 4.78 MiB
JS errors None
Resource errors None

Text to Speech → Audio Statistics

Page screenshot: Text to Speech → Audio Statistics
URL /wp-admin/admin.php?page=text-to-speech-tts-statistics
Aspect menu-item
HTTP status 200
Load time 0.351 s
Memory usage 4.93 MiB
JS errors None
Resource errors None

Text to Speech → Audio Library

Page screenshot: Text to Speech → Audio Library
URL /wp-admin/admin.php?page=text-to-speech-tts-audio-library
Aspect menu-item
HTTP status 200
Load time 0.470 s
Memory usage 4.88 MiB
JS errors None
Resource errors None

Text to Speech → My Plan & Credits

Page screenshot: Text to Speech → My Plan & Credits
URL /wp-admin/admin.php?page=text-to-speech-tts-account
Aspect menu-item
HTTP status 200
Load time 0.577 s
Memory usage 4.77 MiB
JS errors None
Resource errors None

Text to Speech → White Label

Page screenshot: Text to Speech → White Label
URL /wp-admin/admin.php?page=text-to-speech-tts-white-label
Aspect menu-item
HTTP status 200
Load time 0.357 s
Memory usage 4.79 MiB
JS errors None
Resource errors None

Text to Speech → Affiliate Program

Page screenshot: Text to Speech → Affiliate Program
URL /wp-admin/admin.php?page=text-to-speech-tts-affiliate
Aspect menu-item
HTTP status 200
Load time 0.319 s
Memory usage 4.71 MiB
JS errors None
Resource errors None

Text to Speech → Advanced

Page screenshot: Text to Speech → Advanced
URL /wp-admin/admin.php?page=text-to-speech-tts-advanced
Aspect menu-item
HTTP status 200
Load time 0.454 s
Memory usage 4.73 MiB
JS errors None
Resource errors None

Text to Speech → PRO Support

Page screenshot: Text to Speech → PRO Support
URL /wp-admin/admin.php?page=text-to-speech-tts-pro-help
Aspect menu-item
HTTP status 200
Load time 0.156 s
Memory usage N/A
JS errors None
Resource errors None

Text to Speech → Documentation

Page screenshot: Text to Speech → Documentation
URL /wp-admin/admin.php?page=text-to-speech-tts-documentation
Aspect menu-item
HTTP status 200
Load time 0.333 s
Memory usage 4.71 MiB
JS errors None
Resource errors None

Text to Speech →

Page screenshot: Text to Speech →
URL /wp-admin/admin.php?page=text-to-speech-tts-upgrade
Aspect menu-item
HTTP status 200
Load time 0.593 s
Memory usage 4.75 MiB
JS errors None
Resource errors None

Test site – Just another WordPress site

Page screenshot: Test site – Just another WordPress site
URL /
Aspect front-page
HTTP status 200
Load time 0.266 s
Memory usage 4.49 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.424 s0.486 s+0.062 s3.78 MiB4.77 MiB+ 1016.23 KiB
/wp-admin/edit.php0.358 s0.369 s+0.011 s3.79 MiB4.86 MiB+ 1.07 MiB
/wp-admin/post-new.php0.854 s0.953 s+0.099 s6.31 MiB7.36 MiB+ 1.05 MiB
/wp-admin/upload.php0.667 s0.645 s-0.022 s3.74 MiB4.7 MiB+ 982.66 KiB
/wp-admin/options-writing.php0.334 s0.335 s+0.001 s3.71 MiB4.66 MiB+ 971.09 KiB
/wp-admin/media-new.php0.491 s0.357 s-0.134 s3.71 MiB4.66 MiB+ 979.28 KiB
/wp-admin/edit-tags.php?taxonomy=category0.423 s0.368 s-0.055 s3.72 MiB4.69 MiB+ 990.05 KiB
/wp-admin/post-new.php?post_type=page0.706 s0.670 s-0.036 s6.3 MiB7.31 MiB+ 1.01 MiB
/wp-admin/options-discussion.php0.334 s0.404 s+0.070 s3.72 MiB4.66 MiB+ 967.59 KiB
/wp-admin/edit-comments.php0.323 s0.360 s+0.037 s3.74 MiB4.68 MiB+ 967.18 KiB
/0.290 s0.184 s-0.106 s4.12 MiB4.49 MiB+ 371.89 KiB
Average 0.473 s0.466 s-0.007 s4.24 MiB5.17 MiB+ 950.32 KiB

Code Statistics

Note: Third-party libraries and minified JS/CSS files are excluded from these statistics where possible, so the numbers you see here may be lower than those reported by other tools.

PHP
CSS
JavaScript
Language % Lines of code Comment lines Files
PHP54.0%29,6788,19573
CSS25.7%14,09794529
JavaScript20.1%11,0272,56743
SVG0.2%124165
Total 54,926 11,708 210

PHP Code Analysis | More results »

Lines of code 20,574
Total complexity 4,152
Median class complexity 59.0
Median method complexity 3.0
Most complex class Mementor_TTS_Admin
Most complex function Mementor_TTS_Ajax::generate_audio()
Classes 32
Methods 590
Functions 30

Additions

Things that the plugin adds to the site. This section is not intended to be comprehensive. The test tool only looks for a few specific types of added content.

Database Tables 6

Options wp_options 11

PHP Error Log 22 lines

[20-Apr-2026 11:15:32 UTC] [TTS] Created/updated database tables (version: 1.1.1)
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 127
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 128
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 129
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 130
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 131
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 132
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 133
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 134
[20-Apr-2026 11:15:46 UTC] PHP Warning:  Undefined variable $prev_stats in /wp-content/plugins/text-to-speech-tts/admin/partials/pages/statistics.php on line 135
[20-Apr-2026 11:15:56 UTC] TTS: maybe_append_to_content called - THIS SHOULD NOT HAPPEN FOR before_title!
[20-Apr-2026 11:15:56 UTC] TTS: Current position in append: after_content
[20-Apr-2026 11:15:58 UTC] [TTS Auto-Gen] Hook called - new_status: auto-draft, old_status: new, post_id: 39, post_type: post
[20-Apr-2026 11:15:58 UTC] [TTS Auto-Gen] Skipping - not a new publish (new: auto-draft, old: new)
[20-Apr-2026 11:15:58 UTC] TTS: maybe_append_to_content called - THIS SHOULD NOT HAPPEN FOR before_title!
[20-Apr-2026 11:15:58 UTC] TTS: Current position in append: after_content
[20-Apr-2026 11:16:03 UTC] [TTS Auto-Gen] Hook called - new_status: auto-draft, old_status: new, post_id: 40, post_type: page
[20-Apr-2026 11:16:03 UTC] [TTS Auto-Gen] Skipping - not a new publish (new: auto-draft, old: new)
[20-Apr-2026 11:16:03 UTC] TTS: maybe_append_to_content called - THIS SHOULD NOT HAPPEN FOR before_title!
[20-Apr-2026 11:16:03 UTC] TTS: Current position in append: after_content
[20-Apr-2026 11:16:06 UTC] TTS: maybe_append_to_content called - THIS SHOULD NOT HAPPEN FOR before_title!
[20-Apr-2026 11:16:06 UTC] TTS: Current position in append: after_content
See also: All tests for this plugin, How to Hide Text to Speech - TTSWP Admin Menus