FWIW, we use subdomains and the feedback from our customers is that this is very important to them. These customers are financial or large businesses, and we’re storing HR data, so security and data protection issues always come up. It’s not that they want their own URL or subdomain, but showing them theircompany.product.com instantly makes them feel like this is their server. Nevermind that we know that it’s a single Rails app running on a single server from a single (albeit, partitioned) database. We also use this scheme because there will probably be a requirement to actually run it off different servers / databases in the future. I think there are also added security benefits around domain-specific cookies etc and I like not having to remember to scope each SQL query by the company.
However, this scheme can be hard to manage, implementation adds complexity to the code / UX, makes overall metrics/analytics reporting difficult and a few other issues. I’d only do it for higher-price B2B products where the customers are only just getting familiar with SaaS models instead of on-premise installs. As a user though, if there’s any chance that they can be part of two companies, using a multi-tenant approach makes that switching much harder