XAMPP vs MAMP vs Local vs DesktopServer: A Comparison Guide to Local Dev Environments


An easy-to-use local testing server is one of the most important tools in a WordPress developer’s utility belt1. Developing in a local environment lets you make changes to dev sites quickly and easily without having to transfer files anywhere and greatly reduces the risk of making breaking changes on a live server.

While many computers are capable of hosting a WordPress site without needing to install any extra packages, there are a few advantages that a dedicated local development environment can offer. For example: most devs work on more than one project, so it’s extremely helpful to be able to quickly spin up new environments with dedicated urls.

If you’re developing something like a WordPress theme or plugin, it’s also often necessary to make sure that your code runs well on different servers, under different versions of PHP and MySQL. Being able to switch those on the fly or at least select different configs for different dev sites is extremely helpful.

Most of all though, you shouldn’t have to be a sysadmin in order to be able to spin up, maintain, and tear down development environments on your local machine, so we need something that’s easy to use and will do most of the heavy lifting for us.

There are quite a few different applications and tools that fit this bill, but for now we’ll be comparing the 4 GUI-based tools that seem to me to be the largest players in this space: XAMPP, MAMP (Pro), DesktopServer, and Local By Flywheel.


XAMPP, which you may be surprised to find out is pronounced “Shamp”, is probably the oldest local dev environment around and possibly the most complex. XAMPP stands for X-platform Apache MariaDB, PHP and Perl – It’s definitely the only local server that still touts Perl support as a major feature, so if you like to keep it TMTOWTDI, then this is definitely the one for you.


Installing XAMPP seems easy enough: just download the correct installer from their website and run it. In practice, however, maybe not so much. I first tried installing XAMPP under a new user on my Mac laptop, the installer ran fine but that’s about all it did. Once the install was complete and I found the app that I needed to run (hint for users of Alfred/Spotlight as app launchers: it’s not called “XAMPP”, it is intuitively called “Application Manager”), I couldn’t get the server to start up. I chalked this up to the fact that I already had MAMP and Local installed on that machine and there was probably some conflict, but XAMPP never gave me any errors that I could track down, it just tried forever to start its server.

After my failed attempt, I created a MacOS virtual machine so that I could provide XAMPP with the completely blank slate that it needed. Again, the install process went smooth, and this time the server started up as expected.

Getting up and Running With WordPress

SHAMP’s XAMPP’s interface, at least on MacOS, is less than intuitive. Maybe it’s because I’m used to a more app-based approach but it took me a bit to realize that most of XAMPP’s interface exists as a web app on localhost where it offers links to download bitnami modules for WordPress and other applications. I’m sure that you could install WordPress on XAMPP by downloading it directly, but bitnami is the only option that XAMPP gives you so that’s what I tried.


The bitnami installer worked well enough, though I did have to restart it a couple of times before figuring out that I also needed to go back to the “Application Manager” and turn on MySQL. When it finished its thing, I had a new WordPress install at which isn’t exactly what I wanted. I had thought that at some point in this process I would be able to select a hostname like “wp-local.dev”, but this wasn’t the case. In order to use hostnames other than “//localhost”, you have to dive into XAMPP’s Apache config and define them yourself. You then have to edit your computer’s hosts file to set up the domain name. While this is technically what any local development setup requires, most of the other options that we’re reviewing here do this for you pretty seamlessly, so I’m not super impressed with XAMPP for this reason alone.


XAMPP starts off with a silly pronunciation (we can all agree, it should be pronounced “zamp”) and continues the trend with a clunky install process, unintuitive interface, and lack of features. XAMPP isn’t all bad, it’s been around for longer than most web developers and offers a workable solution not only for Mac users, but for Windows and Linux as well. Also, it’s completely free. After the harrowing install process, I don’t have the will to boot up a Windows or Linux VM just to test this out, so I’ll give XAMPP the benefit of the doubt and say that maybe the Mac app is just their weak link. If you’re looking for a local dev environment on MacOS and you don’t need to write Perl, I don’t recommend XAMPP.

XAMPP Rating

; ; ; ; ; (1/5 semicolons)
Meh. At least it comes with an uninstaller.

MAMP (Pro)

MAMP (which comes with no pronunciation guide and so I’m assuming it’s pronounced “potato”) is the second most tenured local server that I know of. Again with the acronyms here, MAMP stands for Mac Apache MySQL and PHP and as the name suggests it’s Mac-only. I would apologize for reviewing a Mac-only product, but I don’t use Windows or (desktop) Linux, so I don’t care at all about those platforms or the people who use them2.


MAMP installation was a breeze compared to SHAMPP – you can probably chalk this up to MAMP’s focus on the Mac platform because the installer looks and feels at home on MacOS, runs quickly, and actually installs an app called MAMP. Additionally, it installs MAMP Pro which you can use as a free trial for 2 weeks but will cost you $59 after that.

Getting Up and Running with WordPress

MAMP is a pretty general-purpose offering and doesn’t package installers for WordPress or any other applications, so you will have to spend 5 minutes doing it yourself. With MAMP (free), this DIY requirement just involves unzipping the latest release of WordPress in MAMP’s default webroot at /Applications/MAMP/htdocs/, creating a database which you can do via phpMyAdmin (easily accessible from MAMP’s webstart page http://localhost), and then following the normal WordPress install instructions. MAMP’s webstart even gives you PHP snippets for connecting to MySQL that you can use as a cheat sheet.



MAMP, like XAMPP, doesn’t give you much help in creating virtual hosts and while it does give you a couple of options for server environments (you can use Apache or Nginx, as well as select between a couple PHP and MySQL versions), it doesn’t let you run multiple types of environments at the same time or do any of the legwork of setting up new sites for you.

MAMP Pro, on the other hand, does all of this and more via an easy-to-use, albeit ugly, native application.

BEHOLD, the glory that is MAMP Pro

Full disclosure: MAMP Pro is my daily driver. I’ve been using MAMP Pro for a number of years and have found it to be reliable, adequately configurable, and slow as molasses. The latest version of MAMP Pro even comes with installers for various applications including WordPress. The WordPress installer seems to work well and intuitively enough, though it wouldn’t set me a username and password–maybe I missed something–so I had to “hack” my way in with Evan’s fantastic wp login package.

MAMP Rating

;;; ; ; (3/5 semicolons)
MAMP (free) is definitely easy to install and use, but will fall short for devs who need to set up multiple sites.

MAMP Pro Rating

;;;; ; (4/5 semicolons)
MAMP Pro picks up where MAMP left off and is well worth its $59 price tag. Honestly, I’m only withholding the last semicolon because I still have two more reviews to do and I don’t want to have to refactor this highly intuitive rating system.


Until recently, DesktopServer has been the only GUI-based local environment built specifically for WordPress developers. As far as I can tell, DesktopServer bundles XAMPP and serves as an extension to the XAMPP server that automatically installs WordPress and handles creating virtual servers and hosts file entries for you automatically. While there is a paid version of DesktopServer that adds features like multisite support (hint: you can just convert a site to multisite manually), as well as some utilities and integrations, the main reason to upgrade seems to be that the free version will only let you create three sites, while the $100/yr premium version lifts this limitation.


I’m beginning to think that this installation section is a bit superfluous as the install process for DesktopServer is pretty much the same as MAMP or XAMPP: you just launch the installer package and mash at the “next” button until you realize that you actually clicked a button that said “finish”. It worked!

It worked!

Getting Up and Running with WordPress

Honestly, just keep mashing that next button. This is where DesktopServer really shines when compared to MAMP/XAMPP. Because it’s built for WordPress development specifically, the DesktopServer app is primarily a wizard that lets you install new WordPress installs under their own .dev domain names. This works great and it’s super quick.

DesktopServer - serving on my desktop

DesktopServer Review

For a WordPress developer who doesn’t want to fuss with too many settings, DesktopServer is a great option. There’s a part of me that wants to be upset about the three site limit of the free version, but it does so much for you for free that I imagine it’d be a hard sell if the free version wasn’t limited by the number of sites you can install.

As a long-time MAMP Pro user, I do wish that DesktopServer had a better site management UI, and I also miss the ability to configure PHP and MySQL versions which seems to be entirely missing from DesktopServer. In general, the DesktopServer UI is a bit weird as it’s essentially an infinitely looping wizard rather than a traditional app – so it’s really designed for making a few big changes like copying, moving, and removing sites and much less intuitive when you just want to check on the state of things.

All in all, I’d say DesktopServer is perfect for WordPress site developers, though maybe a little basic for someone who needs to develop and test themes or plugins in varied deployment scenarios. Bonus: it’s available for Windows as well as Mac, and so far this is probably the best option that I’ve seen for Windows users (not that I’ve tested, or actually care2).

DesktopServer Rating

;;;; ; (4/5 semicolons)
DesktopServer is super easy to use and gets you up and running with WordPress in a snap, but might be a little too basic for developers who need to test in different server environments.

Local By Flywheel

Local By Flywheel is the new kid on the block and, despite the fact that the app’s full name is a mouthful, it’s already a great contender in this space. Originally called Pressmatic and costing a one-time fee of $99, Local was later acquired (can you guess by whom?) by Flywheel who has since been giving it away for free to all new users.


Local (By Flywheel) doesn’t even come with an installer package like the other apps I’ve covered so far. Instead you just launch the app and if it’s your first time running it, you’ll be greeted with the following screen:

Local By Flywheel's installer

Local needs to download quite a bit of stuff to get up and running, but that’s because it’s a much different beast than the other apps. While MAMP/XAMPP actually install Apache, PHP, and MySQL on your computer and run it in the same environment as the rest of your apps, Local By Flywheel installs VirtualBox and uses Docker to run isolated containers for each site that you create. This means Local takes a bit longer than the other apps do (both for the initial setup as well as whenever you create a new site), but the isolation is a great feature and you can even use Local By Flywheel alongside something like MAMP or XAMPP.

Getting Up and Running with WordPress

Like DesktopServer, Local By Flywheel is a WordPress-centric offering, so whenever you create a new site, it’s a WordPress site out of the box (albeit, in a virtual box). What’s more, since Local By Flywheel spins up a number of containers for each site, it also gives you quite a few options in terms of server type (Apache or Nginx), PHP version, and MySQL. As I mentioned before, it does take a slightly noticeable amount of time for Local I’m over this to set up each new site since it needs to provision a new container each time. Other than that it’s just as quick as DesktopServer and with a considerably more attractive UI.

Local By Flywheel - dashboard


I can’t say enough nice things about Local. It’s really the best of both worlds between something like DesktopServer or MAMP and the more advanced/developer-focused tools that we’ll be covering in the next installment of this series, like VVV. As mentioned before, Local offers a variety of server environment options, automatically sets up WordPress (including both variations of multisite) for you, provides an easy interface to share your sites on the internet using Ngrok, will automatically set up SSL for your sites… the list goes on. The best part about Local is that all of this is currently included in the free version of the product.

The virtual machine aspect of Local does make some tasks a bit more complicated. For example, while Local also comes with WP-CLI installed by default, you can’t just open up your site’s folder and start running WP-CLI commands, you need to SSH into the virtual machine. Local does make this very easy, just right click the site name in the sidebar and select “Open Site SSH”, but the experience around this as well as linking volumes into the virtual machine could be better.

Local By Flywheel Rating

;;;;, (4.5/5 semicolons)
Local By Flywheel is almost perfect. It’s is the most complete UI-based local development solution for WordPress developers on the market, and it’s mind-bogglingly free.


Day-to-day I still use MAMP Pro for most of my local development, not only because I’ve been using it for years and I’m already entrenched, but also because I often need to access my dev sites via the CLI and I need to symlink plugins into the sites I’m working on. The way that MAMP works makes this a bit more seamless than Local By Flywheel’s Vagrant setup. If I were working on Windows, and probably even if I were starting from scratch today, Local By Flywheel would be the obvious choice.

What do you use for your local WordPress or other web development projects? Are there other GUI-based tools that you think I should have covered on this list? If you’re a CLI-purist, what CLI-based local development environments (like VVV) should I look into for the next article? Is there anything else you’d like to know more about when it comes to setting up your local dev environment? Let us know in the comments!

1If you find this statement to be controversial, you’re either a masochist or some sort of Linux user – either way, I’d be more than happy to hear your counter-argument in the comments.

2My editor has asked me to include the following editorial note: This statement is in no way endorsed by Delicious Brains Inc. or any of its affiliated entities or subsidiaries despite its appearance on our blog. We love non-Mac users and invite you to defend your equipment choice in the comments 🙂 [sic]

About the Author

Jeff Gould

Jeff is a problem solver at heart who found his way to the web at an early age and never looked back. Before Delicious Brains, Jeff was a freelance web developer specializing in WordPress and front-end development.

  • AndreasSZ

    Nice roundup. If you are using Mac I would like to recommend Laravel Valet which works great with WordPress. https://laravel.com/docs/5.5/valet

    • Longtime Laravel user and didn’t know about that, thanks for sharing!

    • Pete Hegman

      Can’t recommend Laravel Valet enough! I wrote an article a little while ago about integrating Laravel tools into WP development that should help anybody get up and running with Valet. https://medium.com/@petehegman/my-wordpress-dev-setup-using-laravel-tools-to-improve-your-wordpress-development-f1b08de02d3d

    • Joey English

      Also a big proponent of Valet; I was tethered to MAMP for several years, and finally decided to cut the chord (so to speak) a couple of years ago. I’ve had far fewer issues and have much deeper control over my local environment without MAMP adding its complexities for the sake of simplicity — something that I no longer require.

  • jfarsen

    Loved the review, and more importantly your sense of humor (we’re all too serious sometimes). I’ve used all of these for years, and like you favored MAMP Pro, but warming to Local, because… woah … have you *seen* ALL those tech specs on that download page… 🙂

  • Dustin

    On Windows, Laragon is pretty amazing. It has a GUI for installing WordPress as well as lots of other software. It automatically creates virtual hosts, allows you to send & catch test emails, and switch versions of PHP / Apache / MySQL easily. It creates an isolated environment with many things already installed and available via command line: Git, Node.js, NPM, SSH, xDebug, Composer, etc. Definitely worth a look..


  • smcrtv

    Thanks for the rundown, I’d gone from WAMP, to XAMPP, to MAMP, to VirtualBox, to Vagrant/VB, to Docker, and now Homebrew services (nginx, mariadb, php) on my mac has been pretty turnkey for getting all these things running. Sequel Pro for MySQL gui, and over the years I’ve gotten used to editing nginx/apache server configs. It’s the fastest of all the options performance-wise, but if you need true point-and-click, there are great options here.

    • Monte

      Agreed, excellent rundown however I’m running the same setup as smcrtv. I had been working with MAMP Pro for years, but wanted something that gave me more control and found a great post on setting up the whole gamut via Homebrew. I also enjoy being able to switch PHP versions on the fly when necessary and not having to pay for MAMP PRO. This setup has actually made me better at understanding the complexities of the server and therefore helped me in my development path. If anyone is interested in a great run down of how to set it up, I recommend it: https://getgrav.org/blog/macos-sierra-apache-multiple-php-versions

  • coccoinomane

    Thanks for the nice reviews! We use Local at our agency and we are very satsified! We heard that Flywheel is working on a paid Pro version… unless it’s 5k a copy, we shal definitely buy it 😉
    By the way, have you ever tried Kalabox? It’s a Docker environment working on Mac, Linux & Windows. I tried it a year ago but it was still too immature, now apparently they are releasing a 3.0 version (called Lando) so maybe it’s time to give it another try…

  • I’ve tried them all and I’m currently enjoying LbFW (having paid $99 for pressmatic, still waiting for LbFW pro for free!) Not sure what to do when MacOS 10.13 hits – I hate waiting to upgrade OS but relying on a dev environment that you’re not sure will work on the next version of the OS forces that on you!

    Will Laravel Valet work on MacOS High Sierra? might give it a try.

    • Stef Tock

      ah… forgetten about their promise to give ex-presmattic uses Local Pro for free. Thanks for the reminder! I only paid for Pressmatic about 3 months before Flywheel bought it! Installed a fork of Valet (Valet Plus) on 10.13 last night. Okay so far.

      • Thanks for the Valet Plus pointer. Didn’t know about this, will probably try soon.

  • Bokori Robi

    As a free Vagrant option I’d mention Trellis (https://roots.io/trellis/) which helps you to build WordPress sites in a modern environment. It’s a great tool to keep your projects separate on different virtual machines, it handles dev/staging/production environments and after small configuration it is fully automatized. It sets up servers, pushes your changes to production or staging servers with a simple command. In my opinion a much better way than the above mentioned options.

    • Karel


    • Ekeler

      +1, I’d be very interested to see this compared to the other VM options out there.

  • Stef Tock

    Timely post as currently looking at different options. I started with MAMP a long time ago, then DesktopServer, then Pressmatic / Local. Believe Local by Flywheel uses Docker, so started reading about that… and Vagrant and Valet. So many choices! Recently installed Valet to give it a try (as local doesn’t yet work with High Sierra which I rushed into installing on a machine). I like the idea it just works (always on) and is very fast, but not yet convinced that working in a non-sandboxed environment is the way to go?

  • futuristic_concept_juice

    I’ve been using Local for the last year or so and been really happy with it, especially how it handles WP multisite/network using subdomains, something that is a lot more complicated to setup in typical LAMP/MAMP/XAMP setups, or with DesktopServer. I used to setup an entire VM environment for network sites and subdomains, and Local just handles it really well.

    It also seems to work great on both Mac and PC, with *one* exception, and it’s a big one for Windows developers:

    Local is incompatible with Windows 10 HyperV and it fails gracelessly. If you use HyperV on Win10, Windows’ virtualization suite (which is rock solid virtualization), you can’t run Local and unfortunately Local just hangs on startup… No error message, no progress, no log, it just hangs on the startup screen. If you’ve been using HyperV then you’re probably well aware of incompatibilities with other virtualization techniques, but because Local abstracts all of the virtualization away, you might not know how the environment is working and so it’s not clear that’s why it’s failing.

  • Aron

    currently using Vagrant and Docker depending on how i feel that day. I’ve always felt better running in a virtual environment outside of the mac ecosystem.

  • Thank you for the rundown Jeff – I have used Mamp Pro and DesktopServer until finally jumping on the Local bandwagon not too long ago. I was so happy with DesktopServer and got so disappointed when their promised new version just never released. When Local came around I jumped and I have been very happy. A couple of the releases had some problems, but most of the time I have been very happy with Local and will continue using it until something better comes along 🙂

  • I switched from MAMP to Local as soon as I heard about it when it changed ownership, and I’ve never looked back. I don’t do much with my server settings, aside from matching my local settings to the web host’s, so the lack of those types of controls is fine with me.

    One great thing about Local that you didn’t mention is the site blueprints. When I create a new site, I base it off a “blueprint”, which is basically a WordPress install with my starter theme, the plugins I always use, and whatever stuff in the database I want to have, all already there. This gives me a nice head start, and as I update the blueprint with my best practices I’ve always got a nice starter site for each new project.

    If you use Flywheel for hosting they are planning some sort of integration with the Local app as well, having to do with easy pushing or pulling of sites I believe, if that works smoothly it would be a really killer all-in-one solution for development. They’ve been talking about it since they bought the app, so who knows when it’ll happen.

  • I’ve been using Mamp Pro for the last year. It’s been my favorite of all the tools. Sometimes upgrading from version to version can be a little challenging, things change with permissions and things like that between the versions, but I’ve been happy with it. Local by Flyweel is also a great tool. I like it for other reasons! I’m not much for managed WordPress hosting, I like a normal LAMP environment for ease of use with GIT personally, but I think you’re article accurately sums up these tools. No more cowboy coding 🙂

    • Yeah, updates on MAMP Pro are always at least a bit stressful – made worse by the fact that they’ve been releasing quite a bit lately.

      • Yep – I keep hitting skip haha – eventually I’ll do a full MySQL Dump, make sure all my locals are pushed to Bitbucket, and I’ll run the update. It’s just tough when something breaks, but they do have a really good community of people who can help. It’s just never fun to disrupt your workflow! 🙂

  • Luke Cavanagh

    Used to use VVV on Ubuntu Desktop, but MAMP works great on Windows 10.

  • gatchaman

    Nice to see mention of alternatives to Vagrant. I always thought that was overkill for WordPress dev.

  • Thanks for this post – I thinks it’s sort of funny that I’m reading this while in the background Migrate DB Pro is migrating stuff from a Local I’m also so over this “by Flywheel” stuff to a MAMP Pro install. While I like Local by you-know-who, I always felt it is somewhat on the slow side – a remote site on standard serverpilot/OVH VPS is about twice as fast in the WP backend – and it really likes to use a lot of resources, CPU, RAM, and even disk space for the Docker disk image.
    Reading your MAMP Pro “slow as molasses” aside as well as the comments here, I’m half way inclined to try Laravel Valet again, despite the ridiculously incontrollable amount of stuff that gets installed by Homebrew and Composer, and some rather mysterious errors and white screens I had when last testing it.

    • Dan Knauss

      Local is still in a beta phase, I believe.

    • Certainly none of the options are perfect. When it comes to Local vs Mamp Pro I think you have to choose between your computer being slowed down a little with Local’s VM usage or your sites being slow with MAMP Pro (also I can’t keep mysql running for longer than a few hours before I need to `killall -9 mysqld`). I haven’t worked with Valet too much yet, but I think I’m kind of put off by the zero-config aspect – I want a little bit of config… Let us know how you fare with Valet if you do make the switch!

      • Actually, I started installing Valet (Plus) right away. Within about 15 minutes, I had
        Error: /usr/local/opt/php71 is not a valid keg
        Error: /usr/local/opt/php70 is not a valid keg
        (( delete some obscure stuff ))
        Error: The `brew link` step did not complete successfully
        The formula built, but is not symlinked into /usr/local
        Could not symlink .
        /usr/local/opt is not writable.
        Error: The `brew link` step did not complete successfully
        The formula built, but is not symlinked into /usr/local
        Error: Failed to create /usr/local/opt/gettext
        Things that depend on gettext will probably not build.
        (more errors of this kind)
        (( change owner of /usr/local/opt ))
        Error: Directory not empty – /usr/local/opt/php70
        composer global require weprovide/valet-plus
        dyld: Library not loaded: /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib
        Referenced from: /usr/local/bin/php
        Reason: image not found
        Abort trap: 6

        … at which point I gave up and started deleting all the Homebrew stuff, again.

        Thanks for the Mamp mysql warning. Had loads of mysql errors myself today when I setup a few sites in Mamp.

        Back to Local, I guess.

  • theconsultant

    I use Bitnami Stacks to do local installs: https://bitnami.com/stack/wordpress and it is simple enough that I can have non-technical folks install and use it as a safe way to learn WordPress, or one of the many many other stacks Bitnami provides. They provide the same setup as a VM, Docker container or even a direct install to a cloud provider.

    A few of these are new to me though, so thanks for the intro!

  • I’ve had fits trying to get Local installed on a Windows 10 machine. Googled the issues I was having and realized I was FAR from the only one. I’ve used XAMPP for years and am very familiar with it as a result. So I gave up on Local. XAMPP is a little challenging to get started with (and I admittedly have never used it on a Mac) but once you’re comfortable with it I find it’s extremely flexible.

    • Dan Knauss

      Yeah it was tough to install and get working on Windows 10 until mid-2017, at least for me. Their forum was helpful, but it was definitely not ready for common use.

  • Dan Knauss

    I’ve used them all, and they’re all frustrating for the various reasons noted. I had hopes for Desktop Server, but progress on its roadmap slowed down enormously, and it really doesn’t offer much over free alternatives unless you use hosting that will work with its limited abilities to push your local dev site to a remote server. Since I use Flywheel extensively now, as long as that is the case, Local is a promising option assuming it delivers on its own goals. While it’s still in development I am willing to cut it some slack. The Mac version hasn’t posed any problems for me, but the Windows version has been rockier to keep working, and it can be slow. Overall Local is aiming for and starting to hit simplicity as an app that “just works,” with some really nice agency and designer oriented features.

    • Local being an Electron app but closed-source feels like a bit of a missed opportunity. I’m sure they’ll keep putting resources into it, but it’ll never move at the speed and in the direction that it could if it were OSS as a huge part of the app’s target audience would also be great at developing the app itself and could really push it along.

      • Dan Knauss

        Was its predecessor closed? I wasn’t aware of that. Never paid attention to how DS is licensed either.

        • I’m actually not sure what the license is, but they don’t have the source available anywhere that I’m aware and the app ships with the code obfuscated.

          I won’t fault anybody for trying to make money off of their software, so totally understandable that Pressmatic was closed – but now that Flywheel are behind it and giving it away for free…

          • Dan Knauss

            Good point, good question. I will make a note of passing that along next time I have a conversation with someone at Flywheel.

  • Neat stuff here. I’ve been a long time user of MAMP Pro, but have had issues using it on Windows and clashing with antivirus software, so have set up Xampp on our PCs. We’ve tried DesktopServer and it was ok, but I’m very curious to try Local. Thanks for the tip.

  • Sallie Goetsch

    I love the ease of use of Local, but find it occasionally slow. I’ve recently started using Laragon for Windows. It seems more lightweight and was easy to add phpMyAdmin instead of the rather odd DB tool it shipped with. I’ve also tried Bitnami for Windows. My experience of MAMP Pro on Windows was that it went kablooie every time I tried to set permalinks, though that is apparently not a universal problem. XAMPP (the “sh” pronunciation of the “X” was a surprise to me, but it’s hardly unknown, as both Chinese and Mexican Spanish use it) is less user-friendly, but I used it successfully for years.

  • Tony Witham

    I’m a 65 year old web developer newbie. I fired up Local By Flywheel and within an hour had a new site up and running on my Windows 10 laptop. Couldn’t quite believe how easy it was.

  • guy

    Desktop Server runs under PHP5.5. I’m surprised to see it mentioned at all, let alone 4 star rating. When ServerPress is asked when they intend to support modern PHP, they seem to skirt the issue and shut the conversation down, so it is clearly a bit of a sore point for them.

    I use VmWare with full stack servers running inside of some kind of Vagrant Box, usually an Ubuntu 16 (LTS) Bento Box.

    • Yoni Mazuz

      I paid for a DesktopServer Pro subscription in October 2015 when I thought 4.0 was right around the corner. Right before I renewed in 2016 they told me via Twitter that PHP version switching was on the roadmap for 4.x. I started using Local (By Flywheel) a few months ago and like being able to easily match my local PHP version to my live one. Definitely not renewing the DesktopServer subscription this year, though if 4.0 ever comes out, I’ll certainly kick the tires on the free version.

      • Dan Knauss


        I forgot about the 5.5 limitation, good point Guy. Disappointing outcomes with DS for sure.

    • Rita P. Best

      I’m in total agreement with Guy about Desktop Server. It pains me to say it. DS keeps promising a patch, even an update. I’ve. been hearing this for over a year – I’ve lost faith in the product, more importantly DS word. Nice group of people. However rotten communication and a whole lot of hollow promises forced me to find alternatives. “Local” by Flywheel, is a great alternative.

    • Wow, I’m not in the loop with DS, just know it as one of the more widely-used solutions for local development on Mac – but disappointing to hear that they’ve dropped the ball.

  • “you’re either a masochist or some sort of Linux user”. As a non masochist Ubuntu Linux user (#imwithian) I fart in your general direction! Your mother was a hamster and your father smelt of elderberries!

    I’ve always found using a Vagrant box to be the best option for an ‘as close as possible to an actual server’ set up. I first tried VVV but I found it to complicated for my requirements so I ended up creating a customised version of Scotch Box that suits my needs.


    I also prefer vagrant because it just works across any platform, including you poor souls who are forced to use Mac. 😉

  • Daren J Morreale

    I tried using Local and loved it, but I had a problem when I was updating the CSS. The changes weren’t showing up unless I cleared the cache. It became laborious to say the least and I switched back to MAMP for now. Any one else have the same issue with Flywheel? What was the solution if you did?

  • Timely reviews since I’m looking for a dev environment for a couple of future projects. Good info.

  • Grant Palin

    I use XAMPP on Windows 10 Pro for various webdev projects. Not really problematic, and less hassle than chasing down the components and installing them manually. Been trying to migrate some of them to run in Docker containers, so there’s less stuff needing to be run locally. Still figuring it out, but I’ll probably get there someday!

  • Local is near perfection. I use it on Windows and Mac. I’m also a happy Flywheel customer (after using other good VPS and managed hosting options) with no downtime or problems for the last 10 months.

  • Thanks for the reviews! This is very timely for me as I’m finally upgrading from MacOS Yosemite (10.10) to Sierra (10.12). I’ve been putting it off because I dread once again going through all the Homebrew scripts, conf file edits, virtual host setup, etc. I’m definitely going to give Local a try.

  • Yup, following in the footsteps of other open source enthusiasts like Rasmus Lerdorf, Mark Suttleworth and Richard Stallman.

    Linux users, making the world a better place, on repo at a time.

  • Rasmus Schultz

    The best dev environment available for Windows today is Ubuntu on Windows, free for Win 10 by Microsoft. It’s a real Ubuntu Linux environment that runs natively on your CPU, integrates with the native Windows file system, and so on. You can run the bleeding edge versions of PHP, build it from source, install PECL extensions, run native Linux tools and Bash commands via shell functions in PHP and so on.

    My advice is, don’t even bother with Windows binaries of PHP or PECL extensions – nothing beats having full access to the real Linux software, development tools like xdebug, and a near-identical environment to that which your production servers will be running! Windows is and always will be poorly supported for PHP development, because hardly anyone deploys PHP projects to Windows servers. We have a much better option now 🙂

  • Wamp multiple instances

    WAMP is significantly better solution than XAMP. WAMP enables switching between versions of PHP, apache, mysql just by a single click (windows services will restart automatically via console script). This is a highly appreciated feature for development.

  • Rene

    I like to use Vagrant VVV. I know it is already mentioned here but i need to make sure that VVV gets the attention it deserves:)

  • I’ve tried Local by Flywheel and I loved it. I also recommend it to anyone who is just beginning with WordPress (users or developers). Easy to set it up and you can develop just in a few minutes.

  • Philip Newcomer

    I’m the author of Pilothouse (http://www.pilothouse-app.org/), which is a free/open source CLI app for managing a Docker-based local development environment, with a focus on WordPress and Laravel development. Because everything runs in Docker containers, it leaves a very small footprint on your system. You can run WP-CLI, Composer, and Laravel Artisan commands right from your host without having to install and manage those packages on your host, and you don’t need to SSH in to the Docker containers to run them, so it’s very easy to use. Pilothouse has cool features like automated hosts file management, and SSL support for all local sites out-of-the-box. I’d love to see Pilothouse included in your next round of CLI-based local environments.

  • John LaBella

    I have used Xampp but find the method to add Virtual servers (more than one web site) “interesting” it sometimes works. If all you wish to do is WordPress .. then Instant Word Press server seems to work well – (http://www.instantwp.com/) One problem I have noticed with local – you cannot specify where the installation takes place – I have a smaller boot ssd BUT that is where local sets up everything .. Big problem – for me

  • Henrique Mattos

    I won’t go through all the comments, surprisingly you have 64 at the moment and I envy will. But with so many approaches, wouldn’t be nice to give Docker a try? There are so many available in Github right now (although I like to configure it my own).

    Just wondering.. Thanks for the comparison, though. 🙂

  • pixeldroid

    I’m not a WP dev, but our organization, The Milk Mob, has WP site which is central to our operations. Having been around for a long time, I like to mettle, so periodically I clone the site and run it locally using ServerPress to control the server. I’ve also used Xampp, but Serverpress is supposed to do the requisite find/replace when cloning to a new server. My problem is finding a reliable and easy way to periodically clone our site and install it locally. For awhile, All-In-One worked great for this, but as our site has become more complex, it has failed. Anybody have a favorite WP cloning tool or method they’d like to share?

      • pixeldroid

        Thanks for the reply. By way of an update, and a less expensive solution than either of those, I’ve found that Bitnami and Updraft are a great combo to get our site cloned and running locally. For $100, Updraft has a 5-year license of their “migration” module. I also tested “Local”, but I like Bitnami better. It has a bit of a load time, but after loading, it is the fastest local wordpress server of the various methods I’ve tested.

  • stacmv

    Here we have such tools as not mentioned OpenServer (https://ospanel.io/) and Winginx (https://winginx.com/en/). Their features and supported versions of software are at least worth to look at. Both are for Windows though.

  • callmeisaac

    If I read this right, you are incorrect – MAMP Pro offers an automated install of WordPress.
    Also MAMP (Pro) does come for Windows.

  • djohnsmd

    I’ve used AMPPS for years. Free. Runs on Windows, MacOS and Linux. Auto installer for the stack, WordPress, Joomla, Magento, and others. cPanel, MongoDB, MySQL, SQLite, phpMyAdmin, Perl, Python etc. Switch between php versions on the fly. Domain management. 1-click backups.

  • I’m a big fan of this Docker setup: https://github.com/10up/wp-local-docker/

    You just check it out a copy for you project, do “docker-compose up”, and you very quickly have WordPress running at localhost. Might lighter and faster than VVV.

  • Servant Electronic S

    After fighting with Xampp, Mamp (for Windows!) and Wamp, Local by Flywheel was a BREATH OF FRESH air!! *Until* it collided with Windoze 10 and refused to update the “hosts” file. The elder ‘*mp?” alternatives would update “hosts” if-and-only-if I (a) disabled firewall security and webroot and (b) made the changes in 5 minutes before these evil features re-enabled themselves. “Local by Flywheel” could not.
    This (Windoze & 3rd party workarounds) are probably exactly the reason that there are “some kind of Linux users”. Will now boot to Linux and see how far I get in the xampp, mamp, wamp kerfuffle.

  • Jeff, I am one of those Linux (Ubuntu) users you care so little about, and I would just like to point out that there is a much better solution than any of those you have pointed to here ~ “Oracle VM VirtualBox” [https://www.virtualbox.org/wiki/Downloads].

    In fact, the closest you came to it was mentioning “Local by Flywheel”, but you don’t need their fancy wrapper to take advantage of what’s available for from Oracle for free. In fact, “Local” only offers two flavors (Mac and Windows) when Oracle VirtualBox (upon which Flywheel’s solution is built) offers two more. One of them Linux of course.

    Then all you need to do is add BitNami’s free WordPress App [https://docs.bitnami.com/virtual-machine/get-started-virtualbox/] and then the magic starts. Because, instead of just starting a WordPress instance, the clever Bitnami WordPress installer also queries your DHCP and selects a unique IP address for that instance. So then you can very easily/quickly edit your local hosts file to define a domain name alias for that specific IP address.

    And viola! Super quick. Super Easy. Totally Free. And best of all, totally inclusive for all ~ Mac, Windows and Linux users too.

    • And while I think about it, my Linux version will also install a free Lets Encrypt certificate, automagically. I don’t know about you Mac and Windows users. I guess you still have to do it all manually. You see, I don’t really care about those platforms or the people who use them.

  • Tonya Engst

    Thanks… I enjoyed reading this and found it helpful!

  • Marc A Benzakein

    Hi Jeff,

    I am not sure how I missed this review since I do try to stay on top of all the press DesktopServer gets (good and bad). As the one of the principles of ServerPress, I wanted to just pop in and let you and your readers know that there’s a bit more to the Premium membership beyond the 3 site limitation. I also wanted to clear up what the “3 site” limit really is. But before i do, I really do need to say that I appreciate the write-up AND the review. Also, we’re big fans of Migrate DB Pro and recommend it to our customers all the time. 🙂

    First off, the 3-site limit. It’s really not a limit in that you can actually create as many sites as you want, but you ARE limited to the number of sites you can manage at one time. In other words, you can always have three sites going, but in order to create a new one, you need to delete one to make room for it.

    Beyond that, there are other advantages to the Premium Membership. The software included in a Premium Membership includes all updates throughout a given year as well as premium support which includes the ability to contact us to assist with deployment to a live server. Speaking of deployment, the Premium Software has a built-in deployment functionality which makes it super easy to deploy to a live site. Additionally, it includes WP-CLI installed on each site by default as a developer plugin (meaning that when you deploy, the plugin stays local and does not get shipped with the site), NGROK integration for sharing of your site across the internet through a secure tunnel (perfect for the developer who wants to show it to their client), the ability to import archives from most popular backup plugins (Duplicator, Backup Buddy, Updraft, etc), and the ability to export from a local site to a .zip archive for remote deployment or creation of blueprints (perfect for people who start out with the same theme or framework and plugins for every site), Bypass login (allows you to bypass the administrative login on local sites), Dreamweaver support, and a few other things. So, it’s a ton of support (if needed) along with a bunch of features. It’s true that most of these things have workarounds, but the idea is to be efficient with time and that’s our focus.

    Anyway, I hope that helps clear a few things up and should anyone have any questions, feel free to contact me directly! You can find me on twitter (@marcbenzak) or on our contact page. 🙂

    Thanks again for the great article! We always tell people that each product has its advantage and our goal is simply to help you develop the best workflow that works FOR YOU!