I’ve checked into this a few times and the local bank board rates are all quite similar, generally around 1.2% bid-ask spread, or 0.6% from mid market - that is about double the spread compared to competitive money changers. Citibank is much worse and even if you are converting large amounts and call their exchange desk, they still only give you rates similar to local bank board rates.
TransferWise is about 0.1% better than banks at 0.5% from mid market when considering the fee, but also includes the transfer.
Interactive Brokers allows you to trade forex and then your spreads can get paper thin, better than money changers.