Why should I optimize S3 prefixes?

It's a bit weird that there is a S3 best practice recommending distributing an object across prefixes (folder paths in S3) to improve performance. It is forcing developers to handle infrastructure-level performance optimizations that should ideally be managed by the cloud service itself. In the end, this is about scaling the load on the object. I should be able to tell S3 that I want to scale to X number of read/write requests, and S3 should handle how many prefixes it will put my object into (and abstract prefixes away). Then, it can also charge me with respect to the request limit I configure (or however S3 product team decides to charge customers on).