Independent Analytics
Slug: independent-analytics · Ben Sibley · 100,000+
Overall Score
Some areas need attention
What this score means
Scores are calculated on a 100-point scale by analysing six weighted categories: Security, WP.org Readiness, Performance, Code Quality, Accessibility, and Vulnerabilities.
-
Excellent The plugin follows best practices across every measured category. It is well-maintained, low-risk, and recommended for production use.
-
Good Strong overall quality with minor areas for improvement. Generally safe to use on most sites.
-
Needs Review Some areas of concern detected. Review the full issues report and weigh the risks before installing on production.
-
High Risk Significant quality or security problems found. Exercise caution — check the details carefully before using this plugin.
- Wordfence: May 22, 2026 1:33 am (43 minutes ago)
Score Breakdown
Why this score?
Top deductions are based on 1 affected rules, reducing this category by 140 total points.
| Rule | Hits | Impact | Share |
|---|---|---|---|
| Security issue: Warning | 35 | -140 | 100% |
Why this score?
Top deductions are based on 2 affected rules, reducing this category by 9 total points.
| Rule | Hits | Impact | Share |
|---|---|---|---|
| Repo issue: Error | 1 | -8 | 88.9% |
| Repo issue: Notice | 1 | -1 | 11.1% |
Why this score?
Top deductions are based on 0 affected rules, reducing this category by 0 total points.
No deductions were applied for this category in the latest score run.
Why this score?
Top deductions are based on 0 affected rules, reducing this category by 0 total points.
No deductions were applied for this category in the latest score run.
Why this score?
Top deductions are based on 1 affected rules, reducing this category by 10 total points.
| Rule | Hits | Impact | Share |
|---|---|---|---|
| Accessibility issue: Warning | 5 | -10 | 100% |
Why this score?
Top deductions are based on 0 affected rules, reducing this category by 0 total points.
No deductions were applied for this category in the latest score run.
Plugin Details
- Version: 2.14.9
- Active Installs: 100,000+
- Last Updated: 2026-04-25 15:52:00
- Tested up to: 7.0
- Requires PHP: 7.4
- Rating: 4.8/5 (161 ratings)
- Support: 16/16 resolved (100%)
- View on WordPress.org
- Download Plugin
Scan Summary
- Errors: 1
- Warnings: 40
- Notices: 1
- Last Scanned: 2026-05-21 18:59:26
What Changed Since Last Scan
New Issues
No items in this category.
Resolved Issues
No items in this category.
Worsened Issues
No items in this category.
Detected Issues
| Severity | Category | Message | File | Fix Guidance |
|---|---|---|---|---|
| ERROR | REPO | Plugin package does not contain a main plugin file with a valid plugin header. |
Quick
Ensure the package root contains a plugin bootstrap file with standard WordPress plugin headers.
Moderate
Apply the same remediation pattern across repo findings and re-scan to confirm error issues drop.
Advanced
Add automated linting, CI checks, and team review guidance so this issue class is prevented in future releases.
|
|
| NOTICE | REPO | Plugin package does not include a license file. |
Quick
Add a LICENSE or COPYING file so distribution terms are explicit.
Moderate
Apply the same remediation pattern across repo findings and re-scan to confirm notice issues drop.
Advanced
Add automated linting, CI checks, and team review guidance so this issue class is prevented in future releases.
|
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Patch.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_15.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_1_0.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_12.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_1_8.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_21.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_7.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_2.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_16.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_14.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_3.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_11.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_20.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migrations.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_1_9.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_13.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_1_6.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_9.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_8.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Step_Migration.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Migrations/Migration_10.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | IAWP/Admin_Page/Admin_Page.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | SECURITY | Raw superglobal access detected. | IAWP/Admin_Page/Visitor_Page.php |
Quick
Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate
Centralize request normalization in helper methods so handlers consume validated input only.
Advanced
Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | IAWP/Independent_Analytics.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | SECURITY | Raw superglobal access detected. | IAWP/Env.php |
Quick
Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate
Centralize request normalization in helper methods so handlers consume validated input only.
Advanced
Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Database_Manager.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Views/View.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Campaign_Builder.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Raw superglobal access detected. | IAWP/Interrupt.php |
Quick
Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate
Centralize request normalization in helper methods so handlers consume validated input only.
Advanced
Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
|
| WARNING | SECURITY | Raw superglobal access detected. | IAWP/AJAX/AJAX.php |
Quick
Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate
Centralize request normalization in helper methods so handlers consume validated input only.
Advanced
Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
|
| WARNING | SECURITY | Raw superglobal access detected. | IAWP/AJAX/Copy_Report.php |
Quick
Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate
Centralize request normalization in helper methods so handlers consume validated input only.
Advanced
Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
|
| WARNING | SECURITY | Raw superglobal access detected. | IAWP/AJAX/Save_Report.php |
Quick
Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate
Centralize request normalization in helper methods so handlers consume validated input only.
Advanced
Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
|
| WARNING | SECURITY | Raw superglobal access detected. | IAWP/AJAX/Import_Reports.php |
Quick
Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate
Centralize request normalization in helper methods so handlers consume validated input only.
Advanced
Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Known_Referrers.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Plugin_Group.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | IAWP/Models/Page_Virtual.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | IAWP/Models/Page_Post_Type_Archive.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | SECURITY | Direct database query detected without an immediately visible $wpdb->prepare() wrapper. | IAWP/Models/Page.php |
Quick
Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate
Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced
Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | IAWP/Models/Page_Singular.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | SECURITY | Raw superglobal access detected. | IAWP/Utils/Request.php |
Quick
Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate
Centralize request normalization in helper methods so handlers consume validated input only.
Advanced
Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
|
Score History
Range Change: 0 pts · All-Time High: 69/100