If you plan on supporting a moderately large community, you should consider moving to a good server setup for optimal performance. With many different types of dynamic content (activity streams, internal messages, etc.), BuddyPress needs to pull a wide range of content from the database and will slow down on shared hosting. Yes, it is possible to run BuddyPress on shared hosting, but you will be missing out on the huge performance gains and scalability of a powerful server dedicated to your site.
What to look for in a web host
For the most part, you don’t need to worry about server space unless you are hosting a lot of media. 10-20GB is more than enough for most sites. The primary thing we care about is reading and writing to the database quickly, which means an ideal server will have a solid state drive (SSD) and a lot of RAM (2GB or more). A fast CPU is nice as well.
Your server should also be dedicated only to your site so you can set it up however you want, and then easily scale up as necessary. Most people prefer to use a managed virtual private server (VPS) as it offers the benefits of a full private server but at a substantially lower price along with support from the hosting company.
Our Recommendations
Virtual Private Server (VPS)
We’ve hosted sites with many companies, and right now we suggest going with a VPS at KnownHost. They offer the best bang for your buck, along with fantastic technical support and virtually 100% uptime in our experience. Our suggestion is to go with the SSD-2 plan. It gives you 30GB of storage (more than enough) along with 2GB of RAM, an SSD (much faster than a traditional hard drive), a powerful CPU (24 cores) and plenty of bandwidth. This will keep you going for a long time.
They market the price at $50/month, but it will actually be $55/month once you include either cPanel or Plesk – the admin panel for managing your server. I personally prefer Plesk, but I recommend going with whatever you’re used to. If you’ve been using shared hosting you are probably used to cPanel. KnownHost will have you fill out a form to purchase hosting, and within 24 hours they’ll get you set up with your brand new server, paid on a month-to-month basis. $55/month may seem expensive compared to cheap shared hosting, but consider the value of 100% uptime and not having to pay a developer $50/hour or more to fix your site when it goes offline or slows down. It’s a worthwhile investment.
Amazon Web Services (AWS)
An alternative option that you may have heard about is Amazon AWS hosting. In many ways AWS is better than a VPS. It’s virtually infinitely scalable, offers fallbacks if your site goes offline via cloud hosting, and lets you create completely custom architectures (like distributing your site across multiple servers for example). However it also has a slightly steeper learning curve, will be more expensive than a VPS for most people, and will require that you either hire a server admin or learn how to manage a server yourself. So unless you really need it I would still recommend a VPS such as KnownHost or MediaTemple for most people. See a more detailed discussion here.