What is wrong with WP Staging plugin?

June 10, 2018 in Blog, Reviews by

what-is-wrong-with-wp-staging-plugin

How it all started

One of our clients had recently mentioned using the WP Staging plugin on his popular WordPress site and he was very happy with it. He claimed that it saved him time and money that was previously spent on developers to test new website features without affecting live site.

This testimony ignited our curiosity so we went into it to see what the fuss is all about, after all maybe it is the silver bullet that we were looking for all this time, maybe it will take down the burden of constant site migrations to a staging server where all changes are thoroughly tested before moving them live? We decided to give it a try.

Let’s do some testing

Fresh WordPress was installed and WP Staging plugin activated, so far so good.

Now we went to main WP Staging page in admin, then to it’s Sites/Start page where we clicked on button to create a new staging site and finally we started cloning process.

Cloning itself took few seconds to complete. It was all ready and now it’s a time to see the results.

After looking at the cloned files and database tables we were startled at first, couple of minutes more and we got slightly concerned, then after a while, worried.

What is staging environment?

By definition staging is an environment for final testing immediately prior to deploying to production and it is meant to mimic production environment as closely as possible.

Best practice is to create a separate server for your staging environment.

Obviously when sites share resources, there’s always a chance that a change in staging could possibly harm the production environment, which should be avoided if at all possible.

What is wrong with WP Staging plugin?

What this plugin does is that it creates a staging site in a subfolder of the live site and copies all live database tables with a new prefix in a same production database.

There are hell of a lot of things that could go wrong if you are making ‘staging’ site like this and we don’t like the idea that our clients are using it on the established and popular sites.


Here is a short list of what could go wrong:

1) Website performance issues

Slowing down the production site because you are running exact site copy on same server resources. This means that same database queries and php calls that you have on live site are now on ‘staging’ and they are taking resources once more! Depending on the plugins and themes that are installed and available resources on your server this could go from little noticeable to getting your server down due to the resource exhaustion.

2) Doubling production database in size with every ‘staging’ site

Having excess tables does mean memory & hard drive space that could be regained & used for other things. You will not notice performance difference on smaller sites but it is huge on established sites with bigger databases.

3) Security

Testing various plugins on a ‘staging’ server like this is just asking for trouble. What will happen if some of the plugins or themes that you are testing are having security holes or they are poorly coded without any optimization, clearly you risk to compromise live site as well since you are sharing database and server resources.

4) SEO

This one may happen if you are not careful. If by mistake some staging urls leaks to search engines – via some plugin, ping service, theme etc. – your search engine ranking will be affected.


Don’t get me wrong, WP Staging is a well coded plugin that works what its developer says it does. There is also a good support for a plugin even in a free version. Its problem is that it is fundamentally flawed because staging should always be done on a separate server. That is the only proper and secure way for making staging site, period. If something goes wrong and site is down well you do not care much since it is a separate staging server right, now imagine same scenario on your live site – you get the picture.

Placing staging site on a live site as a subfolder and sharing its database is lazy at best and at worst very dangerous practice that can put down your live site.

There is a reason why this kind of plugin was not created earlier. Instead of WP Staging it should probably be called Lazy Man’s Staging. Right now it has about 20k active installations, and that is scary.

Should you use WP Staging plugin?

If you have well established site with lots of visits and larger database, do not use this plugin, really, just don’t! It is cheaper to pay for a proper staging server and a developer to do a site migration than to slow down live site with a ‘staging’ database and file clutter. Do you really want to put yourself in a position to knock down your live website?

If you have small personal blog with just a handful of visitors and you do not care if live site goes down than you can use it to save time. But even then be aware that ,if not properly deleted, you could be left with a database and file clutter that could affect site in a long run. If you decide to use it make sure that you properly delete every excess database table and ‘staging’ subfolder after you are done.


As WP Staging grows and becomes more popular I will probably get back and update this article, we would like to hear your opinions and experiences with this plugin so if you have any feel free to post it in the comment section bellow.

Stay secure!

About Milan

The founder of Dessky, Milan has worked in all aspects of advanced web development, from building large commercialized e-commerce and social network systems to troubleshooting small wordpress blogs. His extensive skills cover virtually every area of web development. Milan works hard to implement tomorrow’s trends utilizing the cutting edge systems of today. He specializes in rich internet web application development and deployment, complex HTML5/CSS3 graphical design layouts, full blown framework-driven rich internet applications, and much more. Milan provides elegant solutions to complex problems encountered by businesses that use internet based services. Also he is the MSc of Computer Science.

1 Star2 Stars3 Stars4 Stars5 Stars (2 votes, average: 5.00 out of 5)
Loading...Loading...

11 responses to What is wrong with WP Staging plugin?

  1. Brigid Rynne says:

    I wish I had read this review before trying WP Staging. Googling hasn’t thrown up anyone else who has had the same issue as I had, but your review explains the risk perfectly. I installed WP Staging initially to test for a plugin conflict, but – reading the blurb – I thought it would be the ideal environment to test a new theme. Not so.

    The staging site is easily identifiable by an orange bar that appears at the top of the screen. I installed my new theme and activated it on the cloned staging site. Went to look at the shop page and realised that I was actually looking at my live site – except that the product categories were showing incorrectly and some of the images were missing.

    Took me a while to sort out. Won’t be using this plugin again.

    • Milan says:

      Hey Brigid,

      Thanks for the comment!

      Hopefully more people will read this article before using wp-staging plugin in production.

  2. David Forer says:

    I was using this plugin on a new site and kind of thought there would be issues. I think it has slowed my site down and I am going to deactivate it. Just curious what else might I have to do to make sure it has been erased “deleted” from my site?

    Thanks in advance

    david

    • Milan says:

      Hi David,

      Thank you for your comment!

      In order to remove WP-Staging completely make sure to Delete WP-Staging plugin and not just to Deactivate it. This is because process of Deleting a plugin will remove all theme settings and must use plugins. Also go through the folders on your website to make sure that there are no any staging folders left – if you find some delete them, you should do the same for staging database tables in phpmyadmin.

      I hope this info helps, give it a try and let us know how it went.

      Cheers!

  3. Alexandre Lanoue says:

    Hi,

    Thanks for the article…we came to the same conclusion after looking at the documentation and trying to setup the plugin so it replicates between two physical server.

    Did you find an alternative that would allow to setup a staging environment on a separate server and push “automatically” the updates from the authoring site to the rendering site?

    Thanks!

    Alex

    • Milan says:

      Hi Alexandre,

      Thanks for the comment.

      At this time there is no alternative with automatic updates. The closest that I could find is the blogvault’s staging but they do not have auto-update push from live site, this is kinda manual solution.

      I hope this info helps. Cheers!

  4. René Hermenau says:

    Hello Milan,

    I am the developer of WP Staging.
    Thanks for your thoughts. Some of your concerns are valid, some not that much as they seem to be.

    – Website Performance Issues: This could be an issue but from our experience, this never had been a real issue and did not noticeably slow down any of the systems WP Staging has been used. MySQL is clever enough not to load unused tables into RAM. So if you are not using the staging site the extra RAM consumption is not that much. I admit that due to that it’s not recommended to create dozens of clones with WP Staging on the same server.

    – Security: Yes this is a valid point and the reason why I am going to release a new version this weekend which allows you to clone the whole site to another database and even a custom directory which can be out of the root of your current WordPress site.

    If you like to give it a try I would be glad to send it to you in advance to have a look at it.

    @Brigid I am pretty sure your issue appeared because there were some links on your site which could not be replaced by WP Staging automatically. One thing for sure, as long as the orange admin bar is shown you are not working on your live site and you will not change anything on the production site. Your described issue that images on your live site were missing after doing changes on the staging site is out of my imagination because the staging site is separated from the production site. If you want me to investigate into this, please feel free to contact me at support [at] support dot com

    • Milan says:

      Hi René,

      Glad to have you on our website, we are always willing to give developers chance to defend their creations :)

      Regarding your remark on the performance:

      “MySQL is clever enough not to load unused tables into RAM. So if you are not using the staging site the extra RAM consumption is not that much.”

      The physical size of the database matters as well: think of backups, for instance. Bare in mind that at some point ‘staging’ site will be used for testing and right then it will take more RAM and affect performance of the live site.

      Some external backup tools ( for example those included in cPanel and WHM ) and plugins out-there that are used daily will use all database tables including the ones from ‘staging’, this is the matter of the tools – not MySQL. Then there is the issue of security plugins (Wordfence) that will scan ‘staging’ subfolder in their default setup.

      With that said, have you ever tested your plugin with larger databases (more than 1M of records)? Further more, have you tested it with websites that use CDN and backup plugins. How about those with standard security plugins like Wordfence, All In One WP Security etc. , how it works with Jetpack, how it’s affecting performance and SEO in such cases. These are only most popular free plugins from wordpress.org, there are also popular resource hogs and poorly coded ones from commercial marketplaces where coding practices are not kept in check. How does your plugin performs on sites that have large number of files and are huge in size, let’s say more than 4GB?

      I think that lots of people would love to see this analysis and it would be very interesting to test both free and pro version – and that would be subject for another article. We will probably do this test as soon as our working schedule allows us to.

      All of these questions could be avoided if free plugin could create staging site on a separate server. I understand that you don’t want to offer this for free, that is ok, but if so then please add one big flashing notice on top of dashboard and plugin’s wordpress.org page that clearly informs users about the risks involved if they decide to setup a staging site on a live server.

      For anyone willing to investigate this plugin further I suggest that you check it’s support forum on wordpress.org there are lots of interesting cases there: https://wordpress.org/support/plugin/wp-staging/ , and some reviews here: https://wordpress.org/support/topic/not-good-for-large-website/ .

      Enjoy!

  5. Rene Hemenau says:

    Hi Milan,

    thanks for having me on board here:-)

    > The physical size of the database matters as well: think of backups

    Every good backup plugin allows you to select the tables you want to backup. On the other hand even several big backup plugins like UpdraftPlus in their free version do not allow you to backup non WordPress prefixed database tables like the wp staging tables so the user would need to either buy their pro version or use a backup plugin like backwpup.

    > With that said, have you ever tested your plugin with larger databases (more than 1M of records)?

    Sure. I would also claim that 1M of table rows belongs to one of the smaller sites we have tested it successfully. The largest database had more than 20GB of data. (You won’t believe how easy it is to fill the transitions in wp_options and the wp_postmeta table with unnecessary data due to the nonoptimized denormalized database structure WordPress uses.

    > Furthermore, have you tested it with websites that use CDN and backup plugins. How about those with standard security plugins like Wordfence, All In One WP Security etc. , how it works with Jetpack, how it’s affecting performance and SEO in such cases

    Jetpack is fine. It detects automatically WP Staging clone as a staging site.
    So far, there are no known issues with any CDN plugins. If you have one, let me know and I take personally care about it.

    About Wordfence and any other security plugin: We recommend to disable it on the staging site the same as we recommend it for caching plugins because this lead sometimes to unexpected results. Nothing serious but it makes working on a development or testing site difficult. If it is just for testing it’s fine but if you work on a site I am sure that even you disable those plugins except for testing purposes as already said.

    Yes, it might not be the optimal way to have a staging site in the same database but it’s still better to have this kind of testing website than using no testing website at all.

    > How does your plugin performs on sites that have large number of files and are huge in size, let’s say more than 4GB?

    4GB of site is a very small site. Did you miss a zero?:-)
    If you mean a really big site like 40GB of data, I can answer that question with a Yes, it works! The only limitation is your storage space on the server but this should not be an issue for sites of this size. Those sites are usually on dedicated servers.

    > All of these questions could be avoided if free plugin could create staging site on a separate server.

    In the future, you will be able to connect to an already existing remote host to be able to push and pull data from it but it will not be technically possible to create a complete one-click staging site without the need to create a blank WordPress site manually first. (and the database of course) . That’s the reason why we started how we started to give the average and not so techy WordPress user the option to create a testing website with a simple click.

    You have many concerns and yes some of them are valid but you already wrote that your client with his popular website was using WP Staging without any issues. So instead of posting one of the lower 2 star reviews (where I’ve posted a solution to the user) it would be fair mentioning to your readers that WP Staging is one of the few plugins that has 99.99% 5-star reviews only.

    I am going to send you the pro version Milan, so you can check it out if you like to.

    Have a great weekend:)

    René

    • Milan says:

      Thank you for answering my questions in such a detail René.

      I wish that all developers are responsive as you are :)

      Regarding your 5-star review remark and for the sake of fairness, in your plugin you have a “Give Feedback” link that is used for rating, that link is set to filter 5 stars reviews only ( you have ?filter=5 at the end of your feedback url ) additionally wordpress.org itself is having default rating set to 5 stars, most users will not bother to change that, so if plugin works user will click on a feedback link then user will only see the filtered 5 star reviews and without changing the default 5 star rating (courtesy of wordpress.org) you’ll get 5 stars simply because average users will not bother to change that. So the statement of 99% ( as of today it is actually 92.77% :) ) 5-star reviews should be taken with a grain of salt, don’t you think? This same rating concerns applies to the most popular wordpress.org plugins as well, not just yours.

      Btw, why there is so much 5-star reviews with a same ‘Great plugin’ title for your plugin?

  6. Milan says:

    So here it is ladies and gentlemen, you’ve just read the defense and suggestions of the creator of the popular WP Staging plugin René Hemenau. Apparently he recommends using staging on live site because “it’s still better to have this kind of testing website than using no testing website at all.”. I personally think that when you have in mind site optimization and live server resources this philosophy is fundamentally flawed but I leave this to our readers to decide after checking all the facts.

    If you still want to use free WP Staging plugin on your live site, even if it’s a larger and more popular one, I strongly suggest that you read all of the above mentioned very carefully and then decide on your own before doing so.

    This is a great source of information for anyone considering use of WP Staging plugin.

    If you want to contribute to this discussion, please feel free to do so by posting your thoughts and experiences in the comment section.

    Thank you all!

Leave a Reply

Your email address will not be published. Required fields are marked *

 

krolick@mailxu.com wegge-lovella@mailxu.com mikkelsen_francine@mailxu.com