There are indeed providers that "do it all". And some even seem to do it all quite well. Nevertheless, I never recommend this approach, and I never use it on any of my own projects, so I won't even bother trying to figure out which of the many providers that claim to be able to do everything well is indeed able to live up to such claims.
Instead, I always use (and recommend) separate service providers for most or all types of service. In this approach, I'll have one company provide email while another provides web hosting, and still others are engaged to provide remaining services (e-commerce, security, etc). At first glance, this may seem like too much trouble, and indeed, there are smart folks who recommend the exact opposite of my recommendation for precisely this reason. From my perspective, however, this is outdated thinking that is simply not embracing the modern tools we have today, to say nothing of ignoring some common sense practices that are known to yield better quality than the one-stop-shop approach.
Ultimately, I have five key reasons for separating my services across multiple providers:
- Security: Compromise in one service does not inherently risk everything.
- Stability (uptime, etc): Similar to the security concern. Issues in one service do not impact the others.
- Continuity: Leaving one provider for another (not uncommon with web hosting, for example), sometimes compromises continuity and quality of service with regard to other services that remain with the original provider. This shouldn't be the case, and some stories we hear in this genre describe practices that are actually illegal (depending upon the situation and locations involved), but it happens.
- Specialization: Web hosts rarely specialize in email (for example), so we get better service by assigning different duties to different providers. To continue with this example, you can improve deliverability of email significantly by moving your sending services to an email specialist (better server reputation, superior metrics and analytics, automation, etc). The same applies to DNS vs hosting: Few do a good enough job with both, as each is a huge universe unto itself, so engaging appropriate expertise in each area strengthens the project overall.
- Additional services: A side effect of specialization is the ability to bundle special capabilities around specific services. For example, DNS at the registrar (or worse, at the host), absolutely denies easy and uninterruptible access to service extensions like those provided by CloudFlare and others (FSSL, remote traffic rules, third party distributed caching and dynamic minification, etc).
The time saved by logging into fewer tools is of far lesser value than the advantages accumulated by engaging true area experts wherever possible. And since one of these accumulated advantages is time saved in the long run by avoiding lower quality service that inevitably requires troubleshooting (or client exodus in response to excessive troubleshooting requirements), I'm convinced that even the common arguments in favor of "do it all" providers (which are saving time and simplifying process), are simply no longer relevant.