I’ve been noticing something lately. In spite of explicit requirements in the plugin developer guidelines that plugins not nag users to upgrade or otherwise hijack the admin dashboard, plugins are in fact doing just that, and it’s starting to seriously irk me.
For reference, here is the relevant section of the guidelines:
11. The plugin should not hijack the admin dashboard.
Users prefer and expect plugins to feel like part of WordPress. Constant nags and overwhelming the admin dashboard with unnecessary alerts detract from this experience.
Upgrade prompts, notices, and alerts should be limited in scope and used sparingly or only on the plugin’s setting page. Any site wide notices or embedded dashboard widgets must be dismissible. Error messages and alerts should include information on how to resolve the situation, and remove themselves when completed.
Advertising within the WordPress Dashboard should be avoided. While developers are permitted to promote their own products and services, historically they have been ineffective; ideally users rarely visit these screens. Remember: tracking referrals via those ads is not permitted (see guideline 7) and most third-party systems do not permit back-end advertisements (notably, Google). Abusing the guidelines of an advertising system will result in such actions being reported.
Developers are welcome and encouraged to include links to their own sites or social networks, as well as locally (within the plugin) including images to enhance that experience.
I have a strong feeling that this particular guideline was expanded back when everyone got so sick of the massive advertisements and nag messages from Yoast SEO that about half of my colleagues stopped using it. At least now Yoast keeps its bombardment to the plugin’s admin screen, rather than infecting your whole site, and you can close that overpowering purple block.
I see quite a few large, colorful cross-sell and up-sell messages on plugin admin screens, and as long as I only see them there, or I can dismiss them easily when they appear on the dashboard or the plugin page, I don’t mind. Developers have to make a living, and freemium is the name of the game these days.
The Real Problem with Plugin Nag Messages
It’s not the principle of these messages that I object to. Heck, I never would have discovered Imagify, one of my favorite image compression plugins, without the notices that popped up on sites where I was using WP Rocket.
The problem with upgrade, cross-sell, and review request messages is the execution. Compare the modest, discreet prompt to check out Modern Tribe’s Image Widget Plus on a site with their free Image Widget installed to the massive, text-heavy ad for Updraft Plus and Updraft Central on a site with WP-Optimize installed. At least you can dismiss the Updraft Plus nag for a whole year.
And yet with all that, I wasn’t inspired to write this post until I saw a review request on a site where I had installed Widget Options:
There are several problems with this review request:
- The review nag message shows up after one week. I have rarely used a plugin extensively enough after one week to be able to write a useful review.
- There is no “dismiss” link or arrow to close the message. You are forced to either put up with it or click one of the available choices. None of those choices is “Not yet, I haven’t had enough time” or “Maybe later.”
- This message shows up on every single admin page, including the post edit screen where I’m typing this.
- This message shows up on sites where I have installed the plugin for a client. Most of my clients won’t even know why I installed the plugin, much be able to review it.
So far, I actually like Widget Options pretty well. I’ve used a number of different widget management plugins over the years, including the widget visibility settings in Jetpack. One thing I like about this one is the option to hide the widget title rather than leaving it blank. It’s a plugin that I’m willing to review when I’ve used it a little more extensively.
But it’s darned well not going to get 5 stars if the developer doesn’t improve this nag message.
Before You Create an Admin Notification
Think about who is going to see this notification. Not everyone who uses your plugin has a WordPress.org account or knows enough to write a review. Restrict your notifications to screens that only people who are actively choosing and installing plugins will see. That doesn’t mean only to admin users: all clients should have admin accounts to their own sites, even if they use editor accounts for writing. It means only on your plugin management screens or perhaps the main plugin screen.
The only notifications that should show up elsewhere are warnings of immediate danger, e.g., “Upgrade this plugin before you upgrade WordPress, or everything will break!” Notices that say you have to enter an API key before a plugin will work also fall into this category. But users should be able to dismiss even those messages. (Perhaps it’s a development or staging site and the API key is only good for a single URL, so will be entered after the site goes live, but not on the developer’s local install.)
Phrase your requests carefully. Though I’m pretty sure it’s unintentional, the language in the Widget Options review request comes across as manipulative. It would be much more neutral if the choices were “Sure, I’ll write a review,” “I’ve already reviewed this plugin,” “Maybe later,” and “Dismiss this notice.”