There's at least one other good reason to pick protobuf over capnproto: they don't have real polyglot support and most folks are using at least two languages in their stack these days (https://capnproto.org/otherlang.html)
Also, if you do embedded, there's a lack of something akin to nanopb for capnproto.
Also, if you do embedded, there's a lack of something akin to nanopb for capnproto.