I’m not really familiar with the trade offs of modes with Postgres but why isn’t Serializable necessary?
Serializable mode uses some kind of optimistic concurrency, where your transaction might get halfway through then fail because of a conflict with another one, which also fails. Then you have to do retry + random backoff on the client side. Spanner does something similar. Problem with Postgres serializable mode is it's slow and won't scale well if many readers/writers are touching the same data.
I get it if this answer isn't satisfying. Partial ACID is worrisome, and full ACID is expensive.