Text to Speech - TTSWP 3.2.0

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: 937.7 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=e0ffb622e4
Aspect after-activation
HTTP status 200
Load time 0.548 s
Memory usage 4.83 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.587 s
Memory usage 5.01 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.420 s
Memory usage 4.92 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.580 s
Memory usage 4.89 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.973 s
Memory usage 4.78 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.610 s
Memory usage 4.93 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.384 s
Memory usage 4.7 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.315 s
Memory usage 4.69 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.365 s
Memory usage 4.73 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.641 s
Memory usage 4.77 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.371 s
Memory usage 4.92 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.936 s
Memory usage 4.86 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.654 s
Memory usage 4.76 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.77 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.302 s
Memory usage 4.69 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.325 s
Memory usage 4.72 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.154 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.307 s
Memory usage 4.69 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.562 s
Memory usage 4.74 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.289 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.927 s0.916 s-0.011 s3.78 MiB4.76 MiB+ 1003.8 KiB
/wp-admin/edit.php0.508 s0.443 s-0.065 s3.79 MiB4.85 MiB+ 1.06 MiB
/wp-admin/post-new.php0.756 s1.166 s+0.410 s6.31 MiB7.35 MiB+ 1.04 MiB
/wp-admin/upload.php0.512 s0.660 s+0.148 s3.74 MiB4.69 MiB+ 970.22 KiB
/wp-admin/options-writing.php0.312 s0.359 s+0.047 s3.72 MiB4.65 MiB+ 958.65 KiB
/wp-admin/media-new.php0.495 s0.366 s-0.129 s3.71 MiB4.65 MiB+ 966.84 KiB
/wp-admin/edit-tags.php?taxonomy=category0.313 s0.311 s-0.002 s3.72 MiB4.67 MiB+ 977.61 KiB
/wp-admin/post-new.php?post_type=page0.876 s0.863 s-0.013 s6.3 MiB7.3 MiB+ 1022.48 KiB
/wp-admin/options-discussion.php0.888 s0.497 s-0.391 s3.72 MiB4.65 MiB+ 955.15 KiB
/wp-admin/edit-comments.php0.429 s0.355 s-0.074 s3.74 MiB4.67 MiB+ 954.74 KiB
/0.322 s0.223 s-0.099 s4.12 MiB4.47 MiB+ 358.13 KiB
Average 0.576 s0.560 s-0.016 s4.24 MiB5.16 MiB+ 937.7 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
PHP53.7%29,1188,01172
CSS26.0%14,08994329
JavaScript20.0%10,8592,55342
SVG0.2%124165
Total 54,190 11,508 208

PHP Code Analysis | More results »

Lines of code 20,084
Total complexity 4,006
Median class complexity 58.0
Median method complexity 3.0
Most complex class Mementor_TTS_Admin
Most complex function Mementor_TTS_Ajax::generate_audio()
Classes 31
Methods 579
Functions 26

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

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