Text to Speech - TTSWP 3.2.8

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: 954.6 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=b4efbdc0d7
Aspect after-activation
HTTP status 200
Load time 0.602 s
Memory usage 4.85 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.604 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.466 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.648 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.541 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.551 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.834 s
Memory usage 4.72 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.460 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.384 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.672 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.325 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.485 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.582 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.340 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.331 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.367 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.153 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.313 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.898 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.296 s
Memory usage 4.47 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.449 s0.621 s+0.172 s3.78 MiB4.77 MiB+ 1020.82 KiB
/wp-admin/edit.php0.364 s0.374 s+0.010 s3.78 MiB4.86 MiB+ 1.08 MiB
/wp-admin/post-new.php0.866 s1.228 s+0.362 s6.31 MiB7.36 MiB+ 1.05 MiB
/wp-admin/upload.php0.719 s0.680 s-0.039 s3.74 MiB4.7 MiB+ 987.24 KiB
/wp-admin/options-writing.php0.332 s0.340 s+0.008 s3.71 MiB4.66 MiB+ 975.67 KiB
/wp-admin/media-new.php0.511 s0.380 s-0.131 s3.7 MiB4.66 MiB+ 983.87 KiB
/wp-admin/edit-tags.php?taxonomy=category0.420 s0.328 s-0.092 s3.72 MiB4.69 MiB+ 994.63 KiB
/wp-admin/post-new.php?post_type=page1.165 s0.899 s-0.266 s6.3 MiB7.31 MiB+ 1.02 MiB
/wp-admin/options-discussion.php0.444 s0.433 s-0.011 s3.71 MiB4.66 MiB+ 972.17 KiB
/wp-admin/edit-comments.php0.367 s0.352 s-0.015 s3.73 MiB4.68 MiB+ 971.76 KiB
/0.291 s0.186 s-0.105 s4.11 MiB4.47 MiB+ 373.76 KiB
Average 0.539 s0.529 s-0.010 s4.24 MiB5.17 MiB+ 954.6 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
PHP55.9%29,8038,25073
CSS24.4%12,97483026
JavaScript19.4%10,3392,41142
SVG0.2%124165
XML0.1%3641
Total 53,276 11,496 207

PHP Code Analysis | More results »

Lines of code 20,681
Total complexity 4,198
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 592
Functions 33

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 12

PHP Error Log 22 lines

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