Parrot SEO Security & Risk Analysis

wordpress.org/plugins/parrot-seo

A powerful, user-friendly SEO plugin for WordPress with modern UI, Gutenberg and Elementor compatibility, and advanced features.

0 active installs v3.5.8 PHP 7.4+ WP 6.2+ Updated Feb 27, 2026
meta-tagsopen-graphschemaseositemap
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Download
Safety Verdict

Is Parrot SEO Safe to Use in 2026?

Generally Safe

Score 100/100

Parrot SEO has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 2mo ago
Risk Assessment

The 'parrot-seo' plugin v3.5.8 exhibits a generally strong security posture, with excellent adherence to secure coding practices. The static analysis reveals a complete absence of dangerous functions, raw SQL queries, and improper output escaping, all of which are critical indicators of secure development. Furthermore, the extensive use of prepared statements for SQL queries and proper output escaping for all outputs significantly mitigates common web application vulnerabilities.

The primary area of concern arises from the taint analysis, which identified 8 flows with unsanitized paths. While no critical or high severity vulnerabilities were explicitly flagged in the taint analysis, 8 high-severity flows indicate a potential risk of information disclosure or unauthorized actions if these unsanitized paths are exploited through the plugin's entry points. The absence of any recorded CVEs or past vulnerabilities is a positive sign, suggesting a mature and well-maintained codebase.

Key Concerns

  • Taint flows with unsanitized paths (High severity)
Vulnerabilities
None known

Parrot SEO Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Version History

Parrot SEO Release Timeline

v3.5.8Current
Code Analysis
Analyzed Apr 16, 2026

Parrot SEO Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
102 prepared
Unescaped Output
10
2968 escaped
Nonce Checks
38
Capability Checks
24
File Operations
6
External Requests
8
Bundled Libraries
0

SQL Query Safety

100% prepared102 total queries

Output Escaping

100% escaped2978 total outputs
Data Flows · Security
8 unsanitized

Data Flow Analysis

20 flows8 with unsanitized paths
ajax_dismiss_notice (admin/class-parrot-seo-admin.php:416)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Parrot SEO Attack Surface

Entry Points12
Unprotected0

AJAX Handlers 12

authwp_ajax_parrot_seo_analyzeadmin/class-parrot-seo-admin.php:48
authwp_ajax_parrot_seo_dismiss_noticeadmin/class-parrot-seo-admin.php:49
authwp_ajax_parrot_seo_elementor_saveintegrations/class-parrot-seo-elementor.php:35
authwp_ajax_parrot_seo_elementor_getintegrations/class-parrot-seo-elementor.php:36
authwp_ajax_parrot_seo_elementor_analyzeintegrations/class-parrot-seo-elementor.php:37
authwp_ajax_parrot_seo_elementor_update_slugintegrations/class-parrot-seo-elementor.php:38
authwp_ajax_parrot_seo_analyzetrunk/admin/class-parrot-seo-admin.php:48
authwp_ajax_parrot_seo_dismiss_noticetrunk/admin/class-parrot-seo-admin.php:49
authwp_ajax_parrot_seo_elementor_savetrunk/integrations/class-parrot-seo-elementor.php:35
authwp_ajax_parrot_seo_elementor_gettrunk/integrations/class-parrot-seo-elementor.php:36
authwp_ajax_parrot_seo_elementor_analyzetrunk/integrations/class-parrot-seo-elementor.php:37
authwp_ajax_parrot_seo_elementor_update_slugtrunk/integrations/class-parrot-seo-elementor.php:38
WordPress Hooks 100
actionadmin_menuadmin/class-parrot-seo-admin-menu.php:22
actionadmin_enqueue_scriptsadmin/class-parrot-seo-admin-menu.php:23
actionadmin_enqueue_scriptsadmin/class-parrot-seo-admin.php:23
filtermanage_posts_columnsadmin/class-parrot-seo-admin.php:26
filtermanage_pages_columnsadmin/class-parrot-seo-admin.php:27
actionmanage_posts_custom_columnadmin/class-parrot-seo-admin.php:28
actionmanage_pages_custom_columnadmin/class-parrot-seo-admin.php:29
filtermanage_edit-post_sortable_columnsadmin/class-parrot-seo-admin.php:32
filtermanage_edit-page_sortable_columnsadmin/class-parrot-seo-admin.php:33
actionquick_edit_custom_boxadmin/class-parrot-seo-admin.php:36
actionsave_postadmin/class-parrot-seo-admin.php:37
actionwp_dashboard_setupadmin/class-parrot-seo-admin.php:40
actionadmin_noticesadmin/class-parrot-seo-admin.php:45
actionadd_meta_boxesadmin/class-parrot-seo-meta-box.php:22
actionsave_postadmin/class-parrot-seo-meta-box.php:23
actionadmin_enqueue_scriptsadmin/class-parrot-seo-meta-box.php:24
actionadmin_initadmin/class-parrot-seo-settings.php:22
actionrest_api_initincludes/api/class-parrot-seo-rest-api.php:29
actionwp_headincludes/meta/class-parrot-seo-meta-tags.php:23
filterpre_get_document_titleincludes/meta/class-parrot-seo-meta-tags.php:26
filterdocument_title_partsincludes/meta/class-parrot-seo-meta-tags.php:27
actioninitincludes/meta/class-parrot-seo-meta.php:46
actionwp_headincludes/meta/class-parrot-seo-open-graph.php:22
actionwp_headincludes/meta/class-parrot-seo-twitter-cards.php:22
actionwp_headincludes/schema/class-parrot-seo-schema.php:31
actioninitincludes/sitemap/class-parrot-seo-sitemap.php:32
actiontemplate_redirectincludes/sitemap/class-parrot-seo-sitemap.php:35
filterrobots_txtincludes/sitemap/class-parrot-seo-sitemap.php:38
actionpublish_postincludes/sitemap/class-parrot-seo-sitemap.php:41
actionpublish_pageincludes/sitemap/class-parrot-seo-sitemap.php:42
filterquery_varsincludes/sitemap/class-parrot-seo-sitemap.php:77
actionelementor/editor/before_enqueue_scriptsintegrations/class-parrot-seo-elementor.php:23
actionelementor/editor/footerintegrations/class-parrot-seo-elementor.php:26
actionparrot_seo_render_schema_templatesintegrations/class-parrot-seo-elementor.php:27
actionelementor/widgets/registerintegrations/class-parrot-seo-elementor.php:30
actionelementor/frontend/after_register_scriptsintegrations/class-parrot-seo-elementor.php:32
actionenqueue_block_editor_assetsintegrations/class-parrot-seo-gutenberg.php:22
actioninitintegrations/class-parrot-seo-gutenberg.php:23
actionadmin_footerintegrations/class-parrot-seo-gutenberg.php:24
filterparrot_seo_editor_seo_dataintegrations/class-parrot-seo-gutenberg.php:25
actionadmin_noticesparrot-seo.php:92
actionadmin_noticesparrot-seo.php:98
actionplugins_loadedparrot-seo.php:188
actionelementor/loadedparrot-seo.php:230
actioninitpublic/class-parrot-seo-public.php:32
actiontemplate_redirectpublic/class-parrot-seo-public.php:35
actiontemplate_redirectpublic/class-parrot-seo-public.php:38
actiontemplate_redirectpublic/class-parrot-seo-public.php:41
actiontemplate_redirectpublic/class-parrot-seo-public.php:44
filterthe_generatorpublic/class-parrot-seo-public.php:68
actionadmin_menutrunk/admin/class-parrot-seo-admin-menu.php:22
actionadmin_enqueue_scriptstrunk/admin/class-parrot-seo-admin-menu.php:23
actionadmin_enqueue_scriptstrunk/admin/class-parrot-seo-admin.php:23
filtermanage_posts_columnstrunk/admin/class-parrot-seo-admin.php:26
filtermanage_pages_columnstrunk/admin/class-parrot-seo-admin.php:27
actionmanage_posts_custom_columntrunk/admin/class-parrot-seo-admin.php:28
actionmanage_pages_custom_columntrunk/admin/class-parrot-seo-admin.php:29
filtermanage_edit-post_sortable_columnstrunk/admin/class-parrot-seo-admin.php:32
filtermanage_edit-page_sortable_columnstrunk/admin/class-parrot-seo-admin.php:33
actionquick_edit_custom_boxtrunk/admin/class-parrot-seo-admin.php:36
actionsave_posttrunk/admin/class-parrot-seo-admin.php:37
actionwp_dashboard_setuptrunk/admin/class-parrot-seo-admin.php:40
actionadmin_noticestrunk/admin/class-parrot-seo-admin.php:45
actionadd_meta_boxestrunk/admin/class-parrot-seo-meta-box.php:22
actionsave_posttrunk/admin/class-parrot-seo-meta-box.php:23
actionadmin_enqueue_scriptstrunk/admin/class-parrot-seo-meta-box.php:24
actionadmin_inittrunk/admin/class-parrot-seo-settings.php:22
actionrest_api_inittrunk/includes/api/class-parrot-seo-rest-api.php:29
actionwp_headtrunk/includes/meta/class-parrot-seo-meta-tags.php:23
filterpre_get_document_titletrunk/includes/meta/class-parrot-seo-meta-tags.php:26
filterdocument_title_partstrunk/includes/meta/class-parrot-seo-meta-tags.php:27
actioninittrunk/includes/meta/class-parrot-seo-meta.php:46
actionwp_headtrunk/includes/meta/class-parrot-seo-open-graph.php:22
actionwp_headtrunk/includes/meta/class-parrot-seo-twitter-cards.php:22
actionwp_headtrunk/includes/schema/class-parrot-seo-schema.php:31
actioninittrunk/includes/sitemap/class-parrot-seo-sitemap.php:32
actiontemplate_redirecttrunk/includes/sitemap/class-parrot-seo-sitemap.php:35
filterrobots_txttrunk/includes/sitemap/class-parrot-seo-sitemap.php:38
actionpublish_posttrunk/includes/sitemap/class-parrot-seo-sitemap.php:41
actionpublish_pagetrunk/includes/sitemap/class-parrot-seo-sitemap.php:42
filterquery_varstrunk/includes/sitemap/class-parrot-seo-sitemap.php:77
actionelementor/editor/before_enqueue_scriptstrunk/integrations/class-parrot-seo-elementor.php:23
actionelementor/editor/footertrunk/integrations/class-parrot-seo-elementor.php:26
actionparrot_seo_render_schema_templatestrunk/integrations/class-parrot-seo-elementor.php:27
actionelementor/widgets/registertrunk/integrations/class-parrot-seo-elementor.php:30
actionelementor/frontend/after_register_scriptstrunk/integrations/class-parrot-seo-elementor.php:32
actionenqueue_block_editor_assetstrunk/integrations/class-parrot-seo-gutenberg.php:22
actioninittrunk/integrations/class-parrot-seo-gutenberg.php:23
actionadmin_footertrunk/integrations/class-parrot-seo-gutenberg.php:24
filterparrot_seo_editor_seo_datatrunk/integrations/class-parrot-seo-gutenberg.php:25
actionadmin_noticestrunk/parrot-seo.php:92
actionadmin_noticestrunk/parrot-seo.php:98
actionplugins_loadedtrunk/parrot-seo.php:188
actionelementor/loadedtrunk/parrot-seo.php:230
actioninittrunk/public/class-parrot-seo-public.php:32
actiontemplate_redirecttrunk/public/class-parrot-seo-public.php:35
actiontemplate_redirecttrunk/public/class-parrot-seo-public.php:38
actiontemplate_redirecttrunk/public/class-parrot-seo-public.php:41
actiontemplate_redirecttrunk/public/class-parrot-seo-public.php:44
filterthe_generatortrunk/public/class-parrot-seo-public.php:68
Maintenance & Trust

Parrot SEO Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedFeb 27, 2026
PHP min version7.4
Downloads180

Community Trust

Rating0/100
Number of ratings0
Active installs0
Developer Profile

Parrot SEO Developer Profile

zoniclab

1 plugin · 0 total installs

94
trust score
Avg Security Score
100/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Parrot SEO

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/parrot-seo/assets/css/admin.css/wp-content/plugins/parrot-seo/assets/css/frontend.css/wp-content/plugins/parrot-seo/assets/css/vendors.css/wp-content/plugins/parrot-seo/assets/js/admin.js/wp-content/plugins/parrot-seo/assets/js/frontend.js/wp-content/plugins/parrot-seo/assets/js/vendors.js
Generator Patterns
Parrot SEO
Script Paths
/wp-content/plugins/parrot-seo/assets/js/admin.js/wp-content/plugins/parrot-seo/assets/js/frontend.js/wp-content/plugins/parrot-seo/assets/js/vendors.js
Version Parameters
parrot-seo/assets/css/admin.css?ver=parrot-seo/assets/css/frontend.css?ver=parrot-seo/assets/css/vendors.css?ver=parrot-seo/assets/js/admin.js?ver=parrot-seo/assets/js/frontend.js?ver=parrot-seo/assets/js/vendors.js?ver=

HTML / DOM Fingerprints

CSS Classes
parrot-seo-admin-wrapparrot-seo-settings-wrapparrot-seo-dashboard-wrapparrot-seo-meta-box-wrap
Data Attributes
data-parrot-seo-keyword-input
JS Globals
parrotSEO
REST Endpoints
/wp-json/parrot-seo/v1/settings/wp-json/parrot-seo/v1/analysis/wp-json/parrot-seo/v1/schema
FAQ

Frequently Asked Questions about Parrot SEO