Here in Cancun I've been using the HSBC atm in one of the downtown Chedraui's. The downtown ATMs charge 23 or 33 pesos fee depending on the bank, vs more than 90 pesos for the standalone ATMs in the tourist hotel zone. (The bus costs 10.5 pesos each way, so it's cheaper to pay for the bus to the cheap ATM than pay the ATM fee!). Plus the ATM is probably safer than the standalone ones in the tourist zone.
I use the HSBC atm because they let me withdraw 9000 pesos at a time for their 33.35 peso fee, vs some of the other banks that charge only 23 pesos but only let you withdraw 6000 pesos per fee.
HSBC seems to give me a very good exchange rate.
Yesterday, my cellphone app reported Banco de Mexico's interbank rate was 18.6060/18.6110 (buy/sell). The same app reported HSBC at 18.23/18.81. But my withdrawal of 9033.35 pesos (including the HSBC atm fee) landed in my US bank account as a charge for 485.03, which works out to 18.6243, which is pretty close to the interbank rate. (I'm a little foggy on buy vs sell when it comes to currency transactions, it seems to me I should have got a number that's lower than 18.60, right?)
My US credit union attaches a 1% international transfer fee to that. So including all fees I am getting 9000 pesos for US$489.89, or an 18.3714 exchange rate with all the fees rolled in, which is still better than the reported buy rate for HSBC.
(I usually grab some groceries and otherwise take my wad of cash straight home and leave most of it along with my ATM card where it's safer than walking around with it. I also try to shield with my body from any prying eyes that might see the big pile of money coming out of the machine)
After my house sells in the US I'll look into getting a different bank than my credit union to see if I can find a way around that 1% fee. The guy I had talked to at the credit union claimed they reimbursed that fee, but I've seen no reimbursements and it's been a couple months since I started getting hit with that fee on every transaction. The money from the house will give me cash to invest at Schwab or Citi or some other place that will give me free international transfers and charges.
Does anyone know whether it's my credit union or HSBC that is setting the actual exchange rate used for the transfer? I guess that's akin to asking whether the interbank exchange is conducted in dollars or pesos.
As an alternative to the ATM fees, my credit union charges $40 for an international wire transfer, so maybe I could open a mexican account and wire a larger chunk of money at a time to it at a time, but I wanted to settle on a particular US bank and credit card before I chose a mexican one, if indeed I get a mexican one.