WP-Polls
by Lester Chan 4.2 (136 reviews)

WP-Polls

Adds an AJAX poll system to your WordPress blog. You can also easily add a poll into your WordPress's blog post/page.

WP-Polls ranks #884 among WordPress.org plugins with 40,000+ active installations, is #49 of 2,578 in the Contact Forms category, a 4.2/5 rating from 136 reviews, and was last updated Sep 2, 2026. Data from WordPress.org, refreshed twice daily — see methodology.

Compatible with WP 7.1
v3.0.2 Current Version v3.0.2
Updated 2 weeks ago Last Update on 02 Sep, 2026
Refreshed 11 hours ago Last Refreshed on
#49 of 2,578 in Contact Forms Top 5% by installs Downloads -84.7% this week Actively maintained
View on WordPress.org
Rank
#884
No change
Active Installs
40K+
-8.4%
KW Avg Position
10
No change
Downloads
3.7M
+44 today
Support Resolved
67%
No change
Rating
84%
Review 4.2 out of 5
4.2 (136 reviews)

Next Milestone 50K

Total Progress 33.6%
40K+ 50K+
93
Ranks to Climb
-
Growth Needed
8,000,000
Active Installs
Pro

Unlock Exact Install Count

See the precise estimated active installs for this plugin, calculated from real-time ranking data.

  • Exact install estimates within tiers
  • Track install growth over time
  • Milestone progress predictions
Upgrade to Pro
Need 6,643 more installs to reach 50K+

Rank Changes

840 862 885 907 929 09-09-2026 10-09-2026 11-09-2026 12-09-2026 13-09-2026 14-09-2026 15-09-2026 16-09-2026
839 861 884 907 929 01-09-2026 02-09-2026 03-09-2026 04-09-2026 05-09-2026 06-09-2026 07-09-2026 08-09-2026 09-09-2026 10-09-2026 11-09-2026 12-09-2026 13-09-2026 14-09-2026 15-09-2026 16-09-2026
Current #884
Change
Best #

Upgrade to Pro

Unlock 30-day and 90-day rank history charts with a Pro subscription.

Upgrade Now

Active Installs Growth

Active Installs 0,000,000+
Growth +0.0%
Peak 0,000,000

Downloads Growth

0 50 100 150 200 250 300 350 09-09-2026 10-09-2026 11-09-2026 12-09-2026 13-09-2026 14-09-2026 15-09-2026 16-09-2026
0 1K 2K 3K 4K 5K 6K 7K 01-09-2026 02-09-2026 03-09-2026 04-09-2026 05-09-2026 06-09-2026 07-09-2026 08-09-2026 09-09-2026 10-09-2026 11-09-2026 12-09-2026 13-09-2026 14-09-2026 15-09-2026 16-09-2026
Downloads
Growth
Peak

Upgrade to Pro

Unlock 30-day, 90-day, and yearly download history charts with a Pro subscription.

Upgrade Now

Reviews & Ratings

4.2
136 reviews
Overall 84%
5
93 (68%)
4
15 (11%)
3
4 (3%)
2
4 (3%)
1
20 (15%)

Support Threads Overview

Resolved
Unresolved
3
Total Threads
2
Resolved
1
Unresolved
67%
Resolution Rate

Security History

Source: WPVulnerability

10 known vulnerabilities on record · 2 in the last 24 months · checked 1 week ago

  1. WP-Polls [wp-polls] < 2.77.3 (closed)

    CVE-2024-13426 · Fixed in v2.77.3

  2. UNPATCHED

    WP-Polls [wp-polls] <= 2.77.3 (unfixed + closed)

    CVE-2025-68081 · No fix released

  3. WP-Polls [wp-polls] < 2.76.0 (closed)

    CVE-2022-1581 · Fixed in v2.76.0

  4. WP-Polls [wp-polls] < 2.77.0 (closed)

    CVE-2022-40130 · Fixed in v2.77.0

  5. WP-Polls [wp-polls] < 2.72 (closed)

    CVE-2015-9352 · Fixed in v2.72

  6. WP-Polls [wp-polls] < 2.73.1 (closed)

    CVE-2016-10936 · Fixed in v2.73.1

  7. WP-Polls [wp-polls] < 2.71 (closed)

    Fixed in v2.71

  8. WP-Polls [wp-polls] < 2.71 (closed)

    Fixed in v2.71

  9. WP-Polls [wp-polls] < 2.73.1 (closed)

    Fixed in v2.73.1

  10. WP-Polls [wp-polls] < 2.70 (closed)

    Fixed in v2.70

TL;DR

AI summary of the plugin's readme

This plugin is for WordPress site owners and bloggers who want to add interactive polls to their site. It solves the need for a customizable, AJAX-based polling system that can be inserted into posts or pages and supports multiple answer selection.

  • AJAX poll system
  • Customizable via templates and CSS
  • Multiple selection of answers
  • Insert polls into posts/pages

Frequently Asked Questions

Common questions about WP-Polls

It is because of rounding issues. To make it always round up to 100%, the last poll's answer will get the remainding percentage added to it. To enable this feature, add this to your theme's functions.php: add_filter( 'wp_polls_round_percentage', '__return_true' );
The stylesheet and the voting script load only on pages that show a poll, a polls archive or the poll widget; a page without one carries neither. WP-Polls will load wp-polls.css from your theme's directory if it exists. If it does not exist, it loads the css/wp-polls.css that ships with WP-Polls. This will allow you to upgrade WP-Polls without worrying about overwriting your polls styles that you have created. A theme copy made before 3.0.0 has no poll bar rules in it, because they used to be generated by PHP. See My poll bars lost their styling above. My own code renders a poll and the page loads no stylesheet or script The head pass looks for the poll widget, a [poll] or [page_polls] shortcode and the two blocks, and anything rendering after it — a template tag, a poll in a loop page — asks for the assets as it renders and gets them from the footer. Neither reaches poll markup fetched over admin-ajax.php or the REST API into a page that itself shows no poll: the fetch has no footer to enqueue into, and the page carried nothing for the head to find. The symptom is a poll that will not vote, under a "Loading ..." that never goes away. Say so from the page that will hold the poll: add_filter( 'wp_polls_needs_assets', '__return_true' ); Anywhere the poll can be predicted this early will do. Code that already runs later in the page — a the_content filter inserting a placeholder, say — can call WP_Polls_Display::request_assets() instead, which is the same request the render paths make and is picked up by the footer pass.
Courtesy Of TreedBox.com Set --wp-polls-bar-background on the answer rather than styling the bar itself. The bar reads that custom property, so this works whichever poll bar style is configured, and it keeps working if the markup changes again. Add to the end of your wp-polls.css: .wp-polls-ul li:nth-child(01) { --wp-polls-bar-background: #8fa0c5; } .wp-polls-ul li:nth-child(02) { --wp-polls-bar-background: #ffff88; } .wp-polls-ul li:nth-child(03) { --wp-polls-bar-background: #ff8a3b; } .wp-polls-ul li:nth-child(04) { --wp-polls-bar-background: #a61e2a; } .wp-polls-ul li:nth-child(05) { --wp-polls-bar-background: #4ebbff; } .wp-polls-ul li:nth-child(06) { --wp-polls-bar-background: #fbca54; } .wp-polls-ul li:nth-child(07) { --wp-polls-bar-background: #aad34f; } .wp-polls-ul li:nth-child(08) { --wp-polls-bar-background: #66cc9a; } .wp-polls-ul li:nth-child(09) { --wp-polls-bar-background: #98cbcb; } .wp-polls-ul li:nth-child(10) { --wp-polls-bar-background: #a67c52; } .wp-polls-ul li:hover { --wp-polls-bar-background: #ff0000; } .wp-polls .wp-polls-bar-fill { transition: background-color 0.7s ease-in-out; } Before 3.0.0 this was written against .pollbar, the single element the bar used to be. That class no longer exists, so the old snippet colours nothing.

More plugins by Lester Chan

Sign In / Register

You need to sign in or register to use this feature.