Text to Speech - TTSWP 3.2.12

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: 963.15 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=2c94f37836
Aspect after-activation
HTTP status 200
Load time 0.567 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.586 s
Memory usage 5.03 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.425 s
Memory usage 4.94 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.615 s
Memory usage 4.92 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.387 s
Memory usage 4.8 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.572 s
Memory usage 4.96 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.305 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.333 s
Memory usage 4.72 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.330 s
Memory usage 4.76 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.667 s
Memory usage 4.79 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.94 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.467 s
Memory usage 4.89 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.706 s
Memory usage 4.78 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.359 s
Memory usage 4.8 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.72 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.331 s
Memory usage 4.75 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.290 s
Memory usage 4.72 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.479 s
Memory usage 4.76 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.241 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.396 s0.451 s+0.055 s3.78 MiB4.78 MiB+ 1.01 MiB
/wp-admin/edit.php0.320 s0.375 s+0.055 s3.78 MiB4.87 MiB+ 1.09 MiB
/wp-admin/post-new.php0.728 s0.933 s+0.205 s6.31 MiB7.37 MiB+ 1.06 MiB
/wp-admin/upload.php0.404 s0.387 s-0.017 s3.74 MiB4.71 MiB+ 996.65 KiB
/wp-admin/options-writing.php0.473 s0.461 s-0.012 s3.71 MiB4.67 MiB+ 985.08 KiB
/wp-admin/media-new.php0.470 s0.329 s-0.141 s3.7 MiB4.67 MiB+ 993.27 KiB
/wp-admin/edit-tags.php?taxonomy=category0.292 s0.407 s+0.115 s3.72 MiB4.7 MiB+ 1004.04 KiB
/wp-admin/post-new.php?post_type=page0.666 s0.626 s-0.040 s6.3 MiB7.32 MiB+ 1.02 MiB
/wp-admin/options-discussion.php0.294 s0.314 s+0.020 s3.71 MiB4.67 MiB+ 981.58 KiB
/wp-admin/edit-comments.php0.300 s0.322 s+0.022 s3.73 MiB4.69 MiB+ 981.17 KiB
/0.250 s0.178 s-0.072 s4.11 MiB4.47 MiB+ 373.76 KiB
Average 0.418 s0.435 s+0.017 s4.24 MiB5.18 MiB+ 963.15 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
PHP56.3%30,2218,33573
CSS24.2%12,97483026
JavaScript19.3%10,3432,41142
SVG0.2%124165
Total 53,662 11,577 206

PHP Code Analysis | More results »

Lines of code 21,066
Total complexity 4,283
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 594
Functions 35

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

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