Normally, it is better to purchase online since it is cheaper. If you need to purchase online, here is a useful tip.
If you're purchasing from an online shop in a different country, for sure your credit card would have a different currency. And most of the time, your base currency (which is the currency of your card) is weaker in online shops like Amazon. This means you are charged a higher amount for the purchase. So you always have to compare it with your credit cards' exchange rate at the time of your purchase. Make sure you are charged the lowest amount.
Here are useful tools to calculate how much you're going to be charged.
Visa's Exchange Rate Calculator
Mastercard's Currency Conversion Tool
For bank admin fees for example, you can check out your bank's website. Here's where you can find Citibank(Singapore) rates: https://www.citibank.com.sg/gcb/static/banking_fees.htm
Just to be sure, also check if your bank has extra fees when you are using your credit card to purchase in another currency. So far Citibank has been straightforward and does not charge additional fees besides the standard admin fee.
Hope this helps!
Feel free to comment below if you have other tricks which you use to save some money when buying online. Cheers!