I agree with a lot of this, but it's missing any discussion of downsides to having a lot of accounts.<p>Some of these include:<p>* Granting permissions to resources in other accounts is complicated. Even where there is first class support, such as for s3 and kms, it involves multiple steps, and familiarity with confusing terminology.<p>* Using the web console or cli is more complicated. In the cli you'll have to manage a bunch of profiles, and probably figure out a way to distribute that aws config to your team. And in the web console, switching between accounts is a huge pain unless you use a third party browser plugin to automate assuming a role (which normally requires knowing the account id). And even then, you need to give that plugin a mapping between names and account ids.<p>* Several products charge per AWS account. Using a lot of accounts can make those products very expensive.<p>* Having to assume a role in another account can complicate code, especially if you may or may not have to assume a role depending on the circumstances.<p>I say this as someone with experience with working with several accounts, and who thinks that we should have more accounts.<p>Even with these downsides, once you reach a certain size or complexity, the benefits outweigh the detriments. But the detriments are still there. I wish AWS did more to make working with a lot of accounts easier.