Jetpack 7.1 Adds Feature Suggestions to Plugin Search Results

Jetpack 7.1 was released earlier this month with new blocks for WordAds, Business Hours, Contact Info, Slideshows, and Videos. This release also quietly added suggestions to the plugin search screen, a change that has not been well-received by the developer community. If a user searches for a plugin that has a feature that is already offered by Jetpack, the plugin will insert an artificial (and dismissible) search result into the first plugin card slot, identifying the corresponding Jetpack feature.

Although these suggestions in plugin search results were not presented as a headline feature in the 7.1 release post, it was clearly listed in the changelog under enhancements. More people began taking notice after WordPress developer Mehul Gohil tweeted a screenshot of it on a live site:

Manipulating search results, even to insert an artificial result, using a plugin that is already installed, is a major new development among plugins hosted on WordPress.org. Automattic is setting a precedent for other plugin authors that want to recommend their own add-ons or extensions when users match certain search terms.

In the feature’s initial proof of concept, Jetpack product lead Beau Lebens explained the motivation behind adding suggestions to the search screen:

We’ve seen that people with Jetpack installed and activated often search for Jetpack features (even by name) in the Plugins > Add New screen in wp-admin. This new module attempts to spot those searches, and provide an artificial search result that calls out that what they’re looking for is in Jetpack, which they already have, and which is already active.

Eight years since its initial release, Jetpack has grown to 45 modules. Most users are not familiar with everything the plugin offers. In fact, many users may not have even installed Jetpack themselves, as it often comes pre-installed with hosting. The suggestions may prevent users from adding alternate third-party plugins, as Jetpack’s module placement in the results subtly implies that these are inferior options to its existing modules.

One of the reasons the feature has many developers rattled is because the UI fails to make it clear that this is an artificial result and not something generated by the plugin directory’s algorithm. Although it is intended to function more as a notice, for the regular user, it is virtually indistinguishable from an advertisement in its current implementation. It hasn’t been live for very long, but over time it may even make it more difficult for plugin developers to offer plugins that compete with Jetpack features.

The feature suggestions in plugin search results became a hot topic on Post Status‘ Slack where Automattic’s Gary Pendergast dropped in to reiterate the Jetpack team’s intentions.

“I’ve been talking to some folks on Jetpack about what’s going on,” Pendergast said. “I think the team’s end goal is pretty good, and it solves a real problem WordPress has. Too often, site owners install masses of plugins that they don’t need, which ultimately creates all sorts of security, performance, and stability issues. In this particular use case, if a site owner is looking for functionality that Jetpack already handles, then the owner should be aware of that.”

Pendergast also said he thinks WordPress core should offer an API for any plugin to be able to do something similar.

Plugin Team Says Jetpack’s Artificial Search Results Do Not Break WordPress.org Guidelines

Although it’s easy to conjure up different ways to abuse this avenue for advertising a plugin’s existing features, WordPress.org’s plugin team is ready to deal with a potential influx of various implementations on a case-by-case basis.

“It’s not really advertising anything – it’s just adding search results for pieces of a plugin that you already have and might not know about, so it’s not really against any rules,” Samuel “Otto” Wood said. “If it was misleading in some manner, then that would be different.”

Wood said the team discussed it but concluded that any implementation of something similar in other plugins will need to be reviewed to see if it’s doing anything misleading.

“Realistically it’s always going to be a judgment call of some sort,” Wood said. “For example, if a plugin was to insert search results for other plugins, then that wouldn’t be okay, because it’s misleading. But, this isn’t that case. It’s just trying to say ‘hey, you have a plugin already installed which does what you’re looking for,’ so it’s trying to be helpful in that respect. It may not necessarily be the best way of accomplishing that goal, admittedly. But it’s pretty valid.”

Wood did not place a hard requirement on having the artificial result be dismissible but said anytime a developer inserts something into a screen where would not normally be, having dismiss functionality is good UX. He doesn’t think it’s likely that many other plugin authors will implement something similar since most are not collections of dozens of plugins and add-ons. However, this type of suggestion seems like it would also be applicable to block collection plugins that include dozens of Gutenberg blocks.

“It will be really difficult for users when all the essential plugin authors implement it,” Gohil said in response to comments on the screenshot he tweeted. “They are using JS to hack into plugin search using hook ‘admin_enqueue_scripts’ and that’s not good. I’m not in favor of it.”

If more plugin authors begin adding suggestions, users could see several rows of artificial results before seeing any real ones, depending on which plugins they have installed. Plugin developers are already brainstorming ways to strip the feature suggestions out. It likely will not be long before plugins like Hide Jetpack Promotions removes the artificial search results to maintain results as delivered by WordPress.org.

Wood said the plugin team does not intend to write any new guidelines for plugin authors creating their own implementations of feature suggestions on the search screen.

“The difference is always going to be one of intent,” Wood said. “It’s JP’s intent here to notify the user of the existence of a feature they may not know about. That’s trying to be helpful to the user, not trying to shut out competition. It doesn’t remove search results. It doesn’t reorder them or filter them. It just adds a card about the feature you’re searching for. If you don’t have JP, then it can’t do anything. It’s not advertising for other plugins or anything like that.”

Jetpack is also tracking search terms longer than three characters, and Wood confirmed that this is also within the guidelines, as long as it is disclosed to the user.

“The whole tracking module doesn’t activate until after you agree to the ToS thingy, so honestly, it’s allowed,” Wood said. “They track lots of things for stats and such. Realistically, so do many other plugins. As long as you ask the user first, before tracking anything, then tracking data is allowed. Opt-in is the rule.”

Wood said he found the search term tracking to be unnecessary since WordPress.org already collects this information through its new search system that runs on ElasticSearch.

“We get all the search terms on the WordPress.org servers, anyway, so both we and they kinda already have them,” Wood said. “Automatticians built our newest plugin search engine, after all. It seems kind of a waste to track them using Jetpack when they literally receive all the searches to run through the search engine.”

Jetpack’s artificial search results, although dismissible, take up the top spot, bypassing the algorithm altogether. It gives the appearance that Jetpack’s built-in feature is either a promoted listing or superior to all other options available in the directory.

Although a suggested module may work more harmoniously with other Jetpack features than a third-party plugin, the modules are built to be fairly general in terms of features. They address the basic needs for the largest number of users but rarely provide more options than a standalone plugin dedicated to performing something similar. Users may very well be searching for a replacement for what Jetpack provides. The ability to easily turn off suggestions in search results with a toggle could go a long way for diplomacy.

76

76 responses to “Jetpack 7.1 Adds Feature Suggestions to Plugin Search Results”

    • I would say you meant WTF but since I know we’ve both said WTF so many times about things like this I guess all we can do now is LOL.

  1. For a decade, nothing that VIPs like Jetpack or Yoast can do has ever “broken WordPress.org guidelines” despite literally breaking the guidelines, time and time and time again.

    Anyone in the WordPress space for more than a couple years knows this already. The sheer hypocrisy is not as offensive as the purposeful and repeated violations of their own site policies, esp when Samuel Wood spontaneously bans random users for lesser cases.

    Listening repeatedly to the same canned “PR” responses that Matt Mullenweg feeds him is hilarious…

    *Contribute to WordPress.org at your own risk*

  2. How is it not a conflict of interest for an employee of Audrey Capital to be involved in deciding (or at least communicating about) whether Automattic has violated the guidelines?

    N.B. I’m not making an attack on Samuel Wood’s character – I don’t know the guy and have no basis for doing that. Rather, I’m questioning a process that wouldn’t involve someone in a position to potentially have a conflict of interest recusing themselves.

  3. I agree this seems like a slippery slope. If this is still allowed in a few months, I don’t see why we wouldn’t promote our premium plugins in the same way. And I imagine others will get into the mix as well. In the end, I doubt this would be a net benefit for the user.

    • Promoting other plugins or premium upgrades in the same space would likely not be allowed, because it would be misleading or an incorrect place to put “advertising”. Guidelines already say not to do that.

      This JP thing isn’t actually advertising anything, which makes it unusual and somewhat unique. If you think that it’s advertising for a plugin that you already have installed and running, well, that’s kind of a unique view of “advertising” you have there.

      I can understand why there is some backlash against it, and I can kind of agree that it would be easy to interpret other things being there as overreach, but in this specific instance, telling a user searching for a term that they already have a plugin installed which does that thing they’re searching for.. that’s kinda unique enough to give it a shot.

      We’re capable of recognizing the difference between trying to help people vs. advertising. So, you know, don’t be going off the deep end there. The existence of a box in the search results isn’t a free pass to go nuts.

      • “Promoting other plugins or premium upgrades in the same space would likely not be allowed, because it would be misleading or an incorrect place to put “advertising”. Guidelines already say not to do that.”

        “We’re capable of recognizing the difference between trying to help people vs. advertising. So, you know, don’t be going off the deep end there. The existence of a box in the search results isn’t a free pass to go nuts.”

        How is what Jetpack doing NOT advertising?

        Install and activate Jetpack. Go to Add New plugins. Search for “Backups” and get an ad from Jetpack to sign up for Jetpack backups and a link to get started that takes you to this URL:

        https://jetpack.com/features/security/

        See screenshot here:

        https://d.pr/i/IT4Jel

        What Jetpack is doing is absolutely for advertising and marketing purposes and my example above tells me you either aren’t actually capable of realizing the difference or are choosing to give Jetpack a pass either willingly or at the direction of your employer.

        This is absolutely injecting advertising into the plugin search results and you are nuts to say otherwise.

      • @otto

        ok surfacing a feature of an installed plugin is fine… but, but, searching backup, surfaces JetPack Backup. That is a premium paid service.

        Respectfully, you are flat out just wrong, This is an ad with prominent placement before competitors.

      • Carl: It’s telling you about a built-in feature of a plugin that you already have installed and running. If you’re looking for a backup solution and you didn’t know about the one built into the plugin you already have, then that’s helpful information.

      • How is it not advertising?!?!

        Jetpack is manipulating search results to show their offerings above other plugins that offer similar features. This is essentially google “AdWords” on search results for free.

        And it’s certainly not clear to the USER the they’re getting manipulated results from their search query.

        This will erode user faith in search results being egalitarian even more so than “Featured Plugins” does already on .org.

        https://cloudup.com/cjn0FgN9rms

      • Otto: It’s promoting a premium upgrade in the search results.

        Let me quote you above…

        “Promoting other plugins or premium upgrades in the same space would likely not be allowed, because it would be misleading or an incorrect place to put “advertising”. Guidelines already say not to do that.”

        Can we quit trying to deny it’s an advertisement? Because it’s an advertisement.

      • If you think that it’s advertising for a plugin that you already have installed and running, well, that’s kind of a unique view of “advertising” you have there.

        Considering the sites that come with Jetpack preinstalled, it isn’t much of a stretch to consider what JP doing as advertising, even to people who already have the plugin installed.

      • This JP thing isn’t actually advertising anything … We’re capable of recognizing the difference between trying to help people vs. advertising

        The filter is named “jetpack_show_promotions”. 🤨

      • Promoting other plugins or premium upgrades in the same space would likely not be allowed

        1. Install JP
        2. On the plugins page, search for the word “search”

        JP modifies results to place an add for its premium Elasticsearch upgrade above free alternatives in the repo, like Relevanssi.

        Screenshot.

        Allowing JP to alter the search page to promote premium products (VaultPress, Elasticsearch, VideoPress) over free alternatives from the repo sets a terrible precedent.

        Now the precedent has been set, would Jetpack also be allowed to hijack search results to promote its premium SEO Tools upgrade above results for free alternatives in the repo like Yoast SEO or All In One SEO?

      • In that case, why not make it a standard so other plugins can leverage this? I imagine a lot of us have free/premium extensions that we wouldn’t mind advertising this way.

        Developers who are following the Guidelines to the dot deserve at very least equal opportunity.

      • > ” If you think that it’s advertising for a plugin that you already have installed and running, well, that’s kind of a unique view of “advertising” you have there.”

        So, if you maintain 20 plugins, and decide to roll the source of the other 19 into every one of those 20 plugins in your next update, you can now “advertise” the other 19 plugins all over the WP dashboard, but it’s now no longer counted “advertising”…. it’s just helpfully informing the users of what they already had installed.

        That’s an absurd outcome. Whether intentional or not, the end result is that JetPack abuses its position as an “all-in-one” plugin to give itself an unfair advantage. The justification being given is playing semantics.

    • Well I’ll be. Who would have thought hacking the WP plugins search by injecting premium plugin ‘suggestions’ was an ok thing to do.

      Thanks JP folks for showing us all how to do it – ‘here we go’ – if it’s ok for the JP folks to be making these ‘helpful suggestions ‘ to their subscribers then it has to be ok for developers who have plugin or block collections to do exactly the same.

      Happy days.

  4. It will be really difficult for users when all the essential plugin authors implement it

    Agree with Gohil. There might be many blocks for Yoast SEO, Jetpack, WP Super Cache, Autoptimize, WP Smush when users search for a generic term such as “optimize”. And that makes the search results polluted.

    Although, Otto said that the plugin review team will review all the plugins that trying to do the same, but with the huge number of plugins, it’s a very hard (and kind of impossible) work.

    Another thing that the way Jetpack does that via hijacking JavaScript might lead to a problem that other plugin authors might do the same to change the interface of WordPress admin area. Maybe not just the plugin search result, but somewhere else, even other plugin’s pages. Who knows.

  5. Wood said the team discussed it but concluded that any implementation of something similar in other plugins will need to be reviewed to see if it’s doing anything misleading.

    We reserve the right to be the only ones (ab)using this feature.

  6. Holy crap… if this isn’t across the line, what is?

    Can we start hiding results from competing plugins? Like can WordPress SEO hide or demote or hide AIO and SEO Framework?

    Can iThemes Security demote Jetpack because brute protect is duplicate functionality?

    Can a theme in the .org repo promote paid plugins above all other results?

    This isn’t a slippery slope, this is a freaking cliff.

    “I’ve been talking to some folks on Jetpack about what’s going on,” Pendergast said. “I think the team’s end goal is pretty good, and it solves a real problem WordPress has. Too often, site owners install masses of plugins that they don’t need, which ultimately creates all sorts of security, performance, and stability issues.

    LOL… a lot of the time those performance and stability issues are from Jetpack and the problem “WordPress has” is Jetpack breaking all the rules and conventions with impunity.

    Plugin Team Says Jetpack’s Artificial Search Results Do Not Break WordPress.org Guidelines

    Clearly we need new guidelines… and maybe new governance.

      • Yeah, except a large portion of non-automatticians clearly think that THIS is “misleading or unethical for a plugin to do”.

        So the conclusion is:
        YES we need new guidelines… and YES we need new governance.

      • https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#11-plugins-should-not-hijack-the-admin-dashboard

        Needs to be revised because the plugin review team is far to lenient in interpreting it.

        `11. Plugins 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, alerts, and the like must be limited in scope and used sparingly, be that contextually or only on the plugin’s setting page`

        Should have been enough….

        Let’s add these two lines:

        `Upgrade prompts, notices, alerts shall not be used for advertising other plugins, themes or services unless notifying the user of a specific plugin dependency. `
        (it’d be great if dependencies were built into core with a whole separate notification system, but until then we need to allow for this)

        and somewhere in #11 we need to add:
        `Plugins shall not hijack or manipulate search results returned from WordPress.org without explicit user consent to do so`.

        Jetpack (or any plugin) could then add an opt-in setting to say “Alert me on the add plugins screen when I search for plugin functionality which a deactivated JetPack module provides”.

  7. Seems problematic. This does as well:

    Automatticians built our newest plugin search engine, after all. It seems kind of a waste to track them using Jetpack when they literally receive all the searches to run through the search engine.

    That seems to imply that Automattic has access to that data whether users have opted-in or not.

    If people in the decision making capacity are being funded by Automattic, then they should recuse themselves from decisions that might be seen to benefit that company.

    • Well, the people who work on WordPress.org have access to the searches being done on it, because they’re working on WordPress.org. This includes a lot of people, from a lot of different places. Automattic is one of those places. So is Yoast, me, half a dozen web hosts…

      The site is a volunteer effort, and yeah, sometimes we have data like search terms that we use to do things like, oh, make a better search engine. If you search on google, then google knows what you searched for. If you search on WordPress.org, well, we get those then don’t we?

      People from many places collaborate and use said data. This doesn’t seem like a very controversial thing to me. Or is your view just because you equate Automattic as the enemy in some way?

      • Hi Otto,

        No, I don’t equate Automattic as the enemy. The quote in the article didn’t make clear if Automattic has temporary access, just because a programmer happens to be doing some coding at the moment, or if they have ongoing access as in the ability to research what people are searching for to make their product better. See the difference?

        People who are paid by third parties to work on dot org are not volunteers. Everyone appreciates that those third parties donate employee time to keep things running. However, if those third parties get privileged access to information that has economic value then they are in essence paying for access. Obviously I’m not talking about someone randomly seeing something while coding.

        Psychologically, because “it is number one”, it suggests that it is the best / right choice. If it is already installed and it shows up in the first slot then it tells the person that the best match is already installed.

        The first position in search results is worth a lot of money. Google makes bank on that. If you have any doubt then ask companies how much they would pay to have their plugin show up in the first slot on a matching tag, even if their plugin was already installed.

        I’m not trying to give you a hard time. I’m just suggesting that it is not an innocent “oops, you already have that installed” helper.

      • @otto Just to help clarify so there’s no confusion or miscommunication, would you be able to clarify what you meant here:

        Wood said he found the search term tracking to be unnecessary since WordPress.org already collects this information through its new search system that runs on ElasticSearch.

        “We get all the search terms on the WordPress.org servers, anyway, so both we and they kinda already have them,” Wood said. “Automatticians built our newest plugin search engine, after all. It seems kind of a waste to track them using Jetpack when they literally receive all the searches to run through the search engine.”

        Are you saying that you, and at least somebody at Jetpack, have an account with user permissions that allows you to see the search terms that come in on wp.org, and even run queries on that data? And if so, is it feasible that actions could be taken on that special knowledge by people at Jetpack? That’s how it seems to come across. If that’s not the case, I’d love to give you the chance to clarify.

    • “Automatticians built our newest plugin search engine, after all. It seems kind of a waste to track them using Jetpack when they literally receive all the searches to run through the search engine.”

      Since I’m one of the Automatticians that was involved in building the plugin search and I run the Elasticsearch services at Automattic that are running the search index I want to clarify what data we are actively tracking for plugin search:

      1. The Elasticsearch index for the plugin directory is hosted similarly to the many VIP ES indices Automattic hosts. We run the same logging on it that we do for other VIPs.
      2. All plugin search results (whether from wp.org or in wp-admin) get cached on wp.org, so the search is only passed on to the wp.com search endpoint if it hasn’t been seen recently on wp.org. This means that the total number of searches for any particular search phrase would actually be very unreliable for us to use for any frequency analysis.
      3. We keep about two months of logs for the wp.com API endpoint in Logstash. Those logs are really just for debugging problems and failures.
      4. We only keep the full ES query for requests that failed so we can use them to debug the failures.
      5. We are not extracting the actual search phrase from the request at all, nor are we logging it. Again, I don’t think that data would be reliable or useful.
      6. Because the searches go to wp.org first, we have no information on the wp.com API request about the site or the user that is performing the query.
      7. We do a little bit of analysis on the query to look at what features of Elasticsearch are being used so we can tag the log entries. This is intended to help with ensuring backwards compatibility when we make upgrades to ES. All the plugin searches just end up with the following tags because the search queries all have the same structure: “query#filtered, query#function_score, query#bool, query#multi_match, query#range, query#and, query#term, function#exp, function#field_value_factor, function_field#plugin_modified, function_field#tested, function_field#active_installs, function_field#support_threads_resolved, function_field#rating”
      6. I’m sure there are some request logs on our wp.com servers mixed in with all the other requests, but the above ones are really the only ones that are at all accessible.
      7. Certainly wp.org has more details about the requests, but as Otto mentioned it really only gets tracked when we need it for an analysis. As far as I know the last time was in 2016. Within Automattic, I think myself and two folks on our internal Dot Org Team were the only ones who looked at that 2016 data.

      Happy to answer more questions.

      • Where exactly is all this specified in privacy policy of wp.org? What exactly is included in those “about two months of logs”? What is triggering deletion after “about two months”?
        Do you realize that all this has to be public and some even needs user consent due to GDPR all over Europe?

      • Hi @Frederike

        Where exactly is all this specified in privacy policy of wp.org?

        The privacy policy does not mention all of these details, it speaks in broader terms about how wordpress.org handles data, privacy, and how third parties are interacted with. Then we adhere to those policies: https://wordpress.org/about/privacy/. I’m giving these details to provide additional transparency since it came up and there was some confusion and details certainly do matter.

        What exactly is included in those “about two months of logs”?

        Other than what I mentioned above already, we also have things like reasons for the errors, the date and time, how long the request took, the data center it was processed in. The tags I mentioned above are really the only thing I think is at all “interesting” in them.

        Mostly I look at the logs in aggregate for:
        – How fast we are handling the requests: 50% in less than 20ms and 95% in less than 80ms
        – Volume of failures: Of about 7m requests over the past 7 days there were a few hundred queries that failed. Mostly they all look like a few bursts of bad requests that are too small for anyone to have bothered to look into.
        – What features of the Elasticsearch API are being used and how often.
        – Examining the JSON of a failing search query so I can run it manually and understand why it is failing.

        In general it is that aggregate information that is of most use to me and the reason why we keep the logs. When we find something is going wrong it is also useful to look for patterns in the timing of when they occurred. In the past we were only tracking the errors, but for handling ES system upgrades it is helpful to understand what query features are being used, and exactly when errors started occurring.

        What is triggering deletion after “about two months”?

        It is automatically deleted.

        Do you realize that all this has to be public and some even needs user consent due to GDPR all over Europe?

        That is what the WordPress Privacy Policy is about. Yes. I’m probably not the best person to discuss with if you think something is missing. Maybe someone in the core-privacy or meta meetings: https://make.wordpress.org/meetings/. Feel free to ping me and pull me in though, happy to be a part of that discussion (@gibrown).

      • @Greg Brown, thanks for explaination.

        All this and every third party who can access any of this needs to be specified in detail in privacy policy of wp.org, including a named contact person and postal address.

        A privacy policy which only “speaks in broader terms” is not GDPR compliant.

        Providing GDPR compliance is the most important feature for all EU users.

        Actually current WordPress itself is not GDPR compliant due to use of Google Webfonts in Gutenberg for which there is a) no consent of user and b) it can not be switched off and c) is not necessary for a working editor.

        Took part in a few core privacy chats already over a year ago, but nobody cared about my warnings, so I am out, sorry. Note that it is only a matter of time, until WordPress will be reported to EU authorities because of lack of legal compliance.

    • Automattic’s abuse of WordPress community for it’s own commercial interests is nothing new. Yes, they do good work and contribute to the core and plugins. But why? Because WordPress powers their business. So every contribution they make has to benefit their commercial interests.

      WordPress core was always lean, and features were not added because “they belong in a plugin.” Until Automattic decided to compete with Wix, SquareSpace, etc. and page builder plugins to recover market share lost by WordPress.com. So they pushed Gutenberg, as crappy as it was and completely unnecessary. It should’ve been left in a plugin. But that wouldn’t work well for WordPress.com, so they pushed it into core. Why make capital investment to add a feature when you can abuse open source community and get what you need for pennies on the dollar. Now we’re stuck with Gutenberg. There’s a reason why Classic Editor plugin is so highly rated and been downloaded millions of times.

      Automattic’s data gathering practices are worse than Facebook, but people don’t realize that when they install Jetpack. And it’s only getting worse with WooCommerce data gathering.

      Everything Automattic does, everything, will be biased towards their bottomline – not WordPress. Their shareholders care about money, not WordPress.

      Yes, they are promoting existing features in plugin search results to be helpful to users. Is that so?

      It’s not about being helpful. It’s about increasing usage of Jetpack, sending more data to Automattic, making users more reliable on Jetpack, so they will upgrade. That’s the real reason. That’s pretty much freemium business model 101. Offer basic version for free, make users depend on it, upgrade them.

      And those who don’t like what Automattic is doing to WordPress have an alternative now, ClassicPress.

  8. That’s trying to be helpful to the user, not trying to shut out competition. It doesn’t remove search results. It doesn’t reorder them or filter them.

    Pushing search results a position down is quite literally reordering them.

    • No…. same order. With a non-search result at the top. It’s styled differently, it makes it pretty clear that it’s from the plugin, and that it isn’t the same as a “search result” there. Even has a dismiss link, which makes it go away and not show up anymore.

      • Bullshit.

        It has exactly same layout, fonts, and colors as a search result. The main differences are that desired action is made more prominent, while dismiss link is tucked in a corner that has no control elements in a real search result.

        It also absolutely does NOT make it clear that it was inserted by a plugin. It is neither spelled out or implied that it is anything other than normal search result.

      • That promoted result is _IDENTICAL_ styling with no indication that it’s not being returned by the search organically.

        What might be a happy compromise is allowing JetPack to change how it’s own result is displayed, but _not_ change the order.

        So here for “backup” it’d still show up in 3rd position (right now it doesn’t show because it’s installed), it if could show up and it could show it’s own content like “Jetpack is already installed and has a module burried deep on some debug page you could enable to do this if you also paid us”?.

        2019 04 02 at 12 59 PM

      • > “It doesn’t reorder them or filter them.”

        Research shows that the search results overwhemingly likely to be clicked are the top few ones. Look at the screenshot in the article; JetPack pushes #1 down to #2, #2 down to #3, #3 down to #4 – and #4 is no longer visible in the viewport at all. To say that #4 hasn’t been filtered because the user can still scroll if he wants to, is semantics. JetPack is functionally filtering the search results.

  9. Simple solution: if the Jetpack team wants to show they’ve got a rock solid product that can stand on its own and be treated like everyone else, Automattic could spin Jetpack off into an independent company (truly independent, not just another pseudo-indie organization with Matt at the helm) and let the market see how that plays out.

  10. If its already installed like it usually is it should be in the plug-in it self as a extension etc etc the work on the product being number one should be the ethic im waiting for jetpack to not be so heavy and handle cdn better than the rest minifying etc etc no icrashing etc etc i find plugins from reviews, write ups, performance self use not search suggestions period.

  11. So if I have a WPMU Dev subscription and have one of their plugins installed, it’s totally okay for them to hijack the plugin search with their own plugins? Because technically it’s not advertising, the subscription covers all of their products, so it’s not an upsell, just a feature that they offer 🤷‍♂️

      • The point is you are allowing a precedent that will be followed outside of wp.org. When hosts, marketplaces, premium products, subscription services, etc all start overriding the search results, you’ll be able to say “nothing to do with wp.org”, but it will have been your decision to allow this on wp.org that lead them to follow suit…

      • And out of interest, if plugins in the wordpress.org directory add “- Suppresses JetPack promotions” as one of their advertised plugin features, and add `add_filter(‘jetpack_show_promotions’, ‘__return_false’);` into their code, how is that?

        Seems to me that if it’s valid for JetPack to decide that users want these by default, then it’s valid for other plugin authors to take the mirror opinion that they don’t. And as long as it’s clearly mentioned in the plugin description, no problem, yes?

  12. To me, this is obviously an ad. You have to pay for the service. It isn’t free.

    What if a plugin like Ninja Forms, which offers an add-on for PayPal or Stripe, started doing the same for those add-ons when users searched for “PayPal” or “Stripe?”

    Those both extend the functionality of a plugin that the user already has installed. The only difference is that those aren’t SaaS offerings; they’re code that gets installed alongside Ninja Forms core.

    If that isn’t ok, is it because one advertises a service and the other an installable solution? That seems like a pretty arbitrary way to define what constitutes an advertisement and what constitutes helping the user.

  13. I wholeheartly agree with the concerns shared by other plugin developers about these unethical practices.

    To me it feels like a big hypocrisy.

    Jetpack is NOT more equal than others. This permanent featuring has to stop. For years it is also placed on the best location on .org plugin directory and also in the plugin installer of every WordPress installation.

    Anyone can clearly see that these are ads. And the purpose is to bring users to the features of Jetpack — or just to upsell their services, like the backup services.

    What would it be otherwise?

    It doesn’t matter what Otto or someone else from Automattic/ Audrey Capital is calling it. We can see and think for ourselves.

    Again: Jetpack is NOT more equal than others.

    I recommend anyone to stay away from Jetpack. There is just no reason ever why a website should connect with WordPress.com and transfer almost all its data to it, except for the user password. See: https://jetpack.com/support/what-data-does-jetpack-sync/

    There’s no reason ever for that.

  14. It likely will not be long before plugins like Hide Jetpack Promotions removes the artificial search results to maintain results as delivered by WordPress.org.

    I would like to clarify that Hide Jetpack Promotions already removes any Jetpack results from the plugin search results.

    This is possible with a standard filter that Jetpack provides to easily to do this.

  15. So showing a link to an extension plugin for, say Woo Commerce, EDD or Contact Form 7 would be “advertising”, but if one bundled that as a “module” in their main plugin, it suddenly is “helping”? Wouldn’t that be an incentive for plugin authors to cram even more things into the already big plugins in order to be able to “help” people?

  16. I won’t use Jetpack on any of my sites because:

    1) It requires a wordpress dot come address for each client (unless I’m mistaken)

    2) It is a hot mess of feature overkill

    3) Did I mention overkill?

  17. We’re only going to see Automattic’s influence over .org continue to increase as their investors start to wonder when and how they’re going to get their money back. Decisions like this that privilege Automattic products will be essential to that effort.

    I don’t blame Otto too much. Matt has put him in an impossible position by making him choose between the best interests of the .org repo and the best interests of his employer.

    I will say I’m grateful that the authors of this website continue to report on and allow criticism of Automattic despite also being employees of Audrey Capital.

    • Yeah, I didn’t want to bring this up, and IANAL… but as it currently stands I’m wondering if this isn’t a violation of the US FTC rules for display ads because it deceptively misleads users into thinking it’s the top search result without clearly declaring it’s an advertisement.

      In fact heck, we should require that ALL advertisements distributed in plugins and themes through .org include “This is an advertisement” language on the ad/notice/banner.

  18. @otto Many people keep explaining that since the backup is a PAID upgrade feature, and is NOT an already available feature of the plugin, it is advertising. Yet, you keep quiet on that point, and keep answering other points. Please specifically address how you came to the conclusion that promoting a paid upgrade to a feature that users don’t get with the plugin already is not an advertisement, in your mind.

    • Hello Donna,

      Right now, we are actively working on a new release of Jetpack to remove those upgrade prompts and to make it more clear that these suggestions are from Jetpack and not the directory. I should expect the release to be out today or tomorrow.

      Jesse

  19. I see why Jetpack did this and while it is not to my taste I can see how it can be of benefit to the user.

    However Jetpack need to make it much clearer that they are adverts/promotions. That’s the law – otherwise you fall into the same trap as google who promoted their own products before others without any indicator that they were not natural search results. This resulted in huge fines from the EU.

    This will be a great example to use in my presentation “The power of Free” at WordCamp Europe

  20. My only issue would be that plugin authors are allowed 3 tags, which are heavily weighted in terms of what is returned in searches. This feels more or less a way to bypass that limitation by allowing this plugin to inject and modify the search results for other keywords. I’ve been using this same method for the past 2 years outside of .org for recommended and required plugins. It works great, has proven to show an increase in installations, and keeps the interface consistent with what is already provided for our users by WP core. The ONLY result we do modify though is OUR brand name, so our plugins are displayed at the top of results when a user enters our actual brand. We do supply the data to merge our results in based off the keywords found in readme.txt for our external sources.
    Since the algorithm and weighting isn’t really documented or floating around to easily find – we insert into those few keywords (3 from the tags in readme + 1 for brand name + 1 plugin name) based on the number of active install counts. As our original goal was to include this functionality in our .org plugins for recommended plugins/extensions we provide, we took the route of adding an additional tab to the filter bar, so users could just click that to find OUR recommended plugins easily.

    I was weary to ever attempt including this functionality in our .org plugins because I was told in the past when asking about this functionality specifically was not allowed . It was also mentioned directly that plugins and themes should never modify the search results (just to be clear – this was specifically mentioned that it only applied for wp.org hosted repo themes and plugins). I wasn’t asking about any external sources, just simply using the plugins API more effectively for recommended plugins/plugin extensions that we would want to encourage our users to use as they provide a better experience. Some aren’t even ours, but other third-parties we’ve taken time to integrate with that are also hosted in wp.org.

    I do believe that this exposes the following 2 issues:

    1. WP core does not provide a clear and consistent way for authors of plugins and themes to recommend plugins.
    I think the “Recommended” tab in the “Plugins > Add New” section should be actual recommendations from the active plugins and active theme installed. If I have WP Forms installed, I shouldn’t be “recommended” an alternative forms plugin like Ninja Forms to use. Vice versa. This goes for theme functionality heavily as well. If a theme integrates certain features to provide compatibility for other plugins – those should be recommended. When themes/plugins have a need, they usually do recommend, either with TGMPA lib or another alternative method. It’s inconsistent, and makes for a poor user experience because there is not any consistency. Core provides APIs already right in the area where users “normally” would go to add new things. This should be the REQUIRED way plugins and themes recommend and require their suggestions. Make the “recommended” section useful in Plugins > Add New, and allow them to have some indication WHO is recommending it, so it’s not just something up in the air in terms of actual compatibility or where the suggestion comes from.

    2. The search algorithm was pretty terrible at one point in time.
    It wasn’t very long ago where I constantly would go to plugins > add new, type in “Yoast” and “WordPress SEO” wasn’t a top result. Other brands were the same way, and it was always frustrating that these searches could be that inaccurate. I don’t know specifics of when or how the search algorithm was changed/improved, but it works much better today, and provides more relevant results based on the query. Even with this improved accuracy, it was expressed that there’s a desire to “help users,” which means there’s still a gap between what is being returned as results, and what this plugin’s authors think should be returned. If many of the same people worked on the search algorithm, along with worked on this plugin – it sounds like the actual need for the author is to target their keywords better by limiting the scope of what functionality their plugin provides, and do better marketing to increase their positions in the search results. Anything outside of this – as is mentioned in almost all comments here – feels like preferential treatment, an unfair advantage, and misleading to end users. That’s not to discount the fact that there’s a perceived issue by this plugin’s author in what should show up in the results, how they are displayed, and even in the underlying algorithm providing the order.

    Truthfully – I’m on the opposite end of the spectrum. I think they made a good decision, and I agree that this plugin took a good approach in terms of being helpful to a user, but it also clearly shows how easily abused something like this can be, and what to do/what not to do. Ad placements, and preferential displaying of cross-marketed brands/products would become more common. Having been told this sort of functionality isn’t allowed in the past does seem to go with the “preferential treatment concerns” people have mentioned in nearly every comment. Every situation is different though, and there could’ve easily been misunderstandings about what the needs were at the time. This was a long time ago, and reviewers/volunteers (whether paid or not) don’t really have that kind of time to invest in digging deeply into every scenario, so it’s understandable and I don’t hold that against anyone. I look forward to seeing what comes from this, and hopefully the underlying concern truly is based on the user experience rather than ulterior motives as have been suggested by others. Only time will tell I guess!

  21. I hope this discussion results in some limitations on how far plugin authors can go to promote. I would also hope that we look at some of the heavy handed efforts to silence the critics. Deeply concerned that FOSS will lose the “F” and “O”.

    There was a review posted on the plugin –

    “It’s “malware” messing with the plugin search results”

    Most of the comments were deleted.

    • I hope this discussion results in some limitations on how far plugin authors can go to promote.

      Maybe some guidelines?

      I would also hope that we look at some of the heavy handed efforts to silence the critics.

      The review you mention is, I believe this one. I’m going to defend this robustly because not only is Jan an extremely hard-working admin in the forums but doesn’t work for Automattic, so has no position here. What he does do is spend a lot of HIM time volunteering to help administer the forums (which includes reviews).

      What you’re seeing here is what will happen for ANY review if you attend to stop using it as a review but more as a general rant, which falls very much into the territory of using it like a blog. In this case, Jan has clearly explained this and then closed it for further comment.

      Based on this, you believe that dissenting voices are being silenced? Quite unbelievable.

  22. Though Jetpack has a collection of modules, I don’t find the need for all the modules it has. For example, it has Photon to deal with images, but I want a specific Lazy load plugin with more functionalities for my images. So, Jetpack must first understand, what their existing audience is looking for before going with this kind of artificial search results.

  23. Guys, did I miss something? Please tell me this is a late 1st April Joke and Sarah just set up a wrong schedule for that post.

    If it is not:

    Can someone enlighten and tell me if I get the JP ads* when I am looking for a particular plugin or feature which I’ve already disabled intentionally in JP settings?

    For instance, I am looking for a particular backup plugin because I do not want to use the JP thingy. Do I still see the ad*?

    Or do I get that ad* only when I’ve already installed and activated the JP backup module?

    These ads* are even not declared as sponsored results or something similar. Why not?

    I’ve learned not to hijack any WordPress natives UI elements with notices of my own plugins except on my own plugin UI so this attempt by JP does not feel right.

    *Yes, this is an advertisement. No matter what the advertisers “intention” is.

    • Looks like they aren’t giving up this idea anytime soon. Now that they have started to recommend Extensions in WooCommerce also, they may soon come up with the idea of advertising, i.e. making developers spend money to put their extension in the recommendation.

Newsletter

Subscribe Via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.