"Real" exchange rates: Revolut doesn't live up to its promise

I am not trying to answer the question about what makes more sense here, I am just sorting the nomenclature. Mid market is easier to understand and more consumer friendly, but it‘s also a little bit misleading when TW implies that interbank rate and mid market are the same. Usually, the term interbank rate referrs to a market where currencies are traded with a spread. Like the stock market.

When using Revolut, you can ask this question, for example:

How many GBP do I need to buy XYZ JPY? So for a GBP to JPY exchange, the app would show you the buy rate.


I would suggest that if you buy EUR/USD you’ll have to pay what is currently asked for and if you sell EUR/USD you need to bid a price someone wants to pay. Thus, from the two current prices (buy / sell, bid / ask) you always have to use the worse one for the transaction. From my amateurish understanding, the mid-market rate is just something artificial, like an average of bid and sell. Thus, the mid-markt rate is not “real”, because it’s not the rate some other party is currently willing to accept for a transaction. Since it is not real, R will not give you that rate as they would make loss this way.

1 Like

Make a quick test during the week: simulate a transfer GBP --> EUR and then EUR --> GBP. The difference you see is the spread between the two rates.

Also, you can find other sources for currencies with Google. Commerzbank for example provides their own rates for some currencies. They show bid and ask prices on their website.

(I know, this is nitpicking, but TW does not claim interbank and mid market are the same. They imply that [in marketing or in consumer articles about FX] the terms are used like it would be the same.)

1 Like

in the :r: app it’s quite easy as you can “flip” the currencies on the exchange window.
currently (yes, weekend) 1000 GBP get exchanged to 1323.65 USD, but if you flip it you need 1337.36 USD to get your 1000 GBP back. and those 1323.65 USD would become 989.74 GBP (10.24‰ spread)

At the same time Google says 1000 GBP is equivalent to 1330.80 USD.

So maybe that why we see strange rates on the weekend? Like, the spread is much bigger plus they add their markup. At least it would be an idea to look up Morningstar bid / ask rates (they claim to use Morningstar, right?), add the markup and compare…

I’d still be mad with them because they could just answer and explain stuff here. Plus, that other topic on BGN can’t be explained this way (or in pretty any other non-crazy way)…

I can’t exchange to BGN at all. I just tested GBP to USD,EUR,HUF,PLN and they are pretty much at 0% spread. the existing difference is only because of rounding on the decimals of the rate (pip)

Hi there. Firstly let me apology for the delay.

After investigating this for you I would to clarify that our rates are indeed correct and the weekend mark up is 1% for KES. Unfortunately, you were checking the interbank mid market rate and not the *interbank bid rate. Rate providers like XE.com do not show the interbank bid rate bit the mid-market rate, i.e. the average between the bid and ask rate. This is because when you go to search up a currency pair the website doesn’t know whether you’re looking to buy or sell that currency so it just gives the middle.

Specifically, on the 6 of May you have received 97.91 (including the the 1% weekend mark up). As this has been previously explained Revolut uses the Friday’s closure rate plus 1%. The interbank bid rate at that time was 98.90. If you apply 1% mark up you get 97.91

A simple way to check this is to use https://www.investing.com/currencies/chf-kes-chart and the method you can us is:

Today’s Mid Market - Bid rate = x

Mid Market rate - x difference = Interbank bid rate .

IF it’s a weekend:

Interbank - 1%

I hope this now makes clear that Revolut indeed provides the superior interbank bid rate.


Andreas K.


This is a GREAT answer, thanks !


@anon33247966, thank you very much for your research and explanation. This will help the community to understand Revolut’s FX rates.

According to the site you indicated, the spread for EUR/KES at the moment is 114.91-118.91 (=3.5%). This explains a lot. So, for some exotic currencies, you could describe your rates in two ways:

a) We charge 0.0% markup (based on whatever crappy interbank bid rate you can find on www.investing.com). That’s exactly how legacy banks did it for years.
b) We charge 1.7% markup (based on the well known mid-market rate). This option looks less attractive of course, but could prevent surprise and disappointment with future users.

This might be true for some currencies, but definitely not for all. As I wrote time and again, TransferWise offers KES with a constant 0.7% fee on the mid-market rate. So they must get a significantly better bid rate than you.

Anyway, I will now stop boring you with my “grievances” and continue using Revolut for those of my banking needs, where it really is superior.


I wish there was a dislike button.

Andreas just perfectly proved you wrong, but your ego doesn’t let you admire it.

He never said that they get their rates from investing.com, we all know it’s from Morningstar. He mentions investing.com as you were checking at xe.com the interbank mid rate and not the interbank bid.

It’s ok you can use TW. Now let us enjoy Revolut.


I would really appreciate if Revolut would simply show in the process, which rates at this very moment apply (and maybe even give the ‘weekend warning’), so people know why they get more (or less) money than expected. Something like “This includes this and that rate”. Doesn’t have to be a novel, just some words explaining what’s going on.

I mean, at the time of exchanging money, the app and infrastructure behind already know the rates, so why not display them to the user?

IMHO that would be beneficial for the user as well as for the support people, because then they wouldn’t have to explain over and over again


transparency and information are fundamental to keep the millennial crowd calmed


Andreas closed the other '2,7% markup… ’ thread, so let me reply here.

To me, the definition of bid rate vs. midrate, while important to notice, is not crucial.

What IS crucial to me is the actual Revolut rate I can see and get in the app, that I can use on Friday to buy the currency, vs. the actual weekend rate.

And this difference- REVOLUT VS. REVOLUT, forget the definitions of bid, ask or mid, is still usually WAY HIGHER THAN DECLARED
I can provide fresh examples and screenshots.

It can’t be put in any more simple way. Any explanation for that? So come on, @anon33247966, the explanation you provided for KES was not enough…

1 Like

Hi there. If I’m not mistaken I’ve explained how Revolut’s rates work via a direct message, clarifying that you were checking wrong rates.

After reading your chat history with out support team I can see you’re doubting the weekend mark up on the following currency pair PLN/USD, arguing there was a 2% mark up instead of 0.5%.

In fact on the 4th of May the Fridays’s closure rate was 0.2820 + 0.5% = 0.2806 and you have received 0.2798. So it’s clearly 0.5% and not 2%.

However, I believe that the entire confusion here it comes from the fact that you have read the wrong information from the ‘converter’ feature in the app. What we do display on the app is always the bid rate. What you should have been looking at is the PLN/USD rate and not the way round.


Actually I’m quite glad that we finally got a reasonable explanation for the observed rates, so thank you!

The only bit of criticism that’s left is that Revolut is, on the weekend, indeed quite expensive. In particular, the resulting rate after the markup is - at least in some cases - worse than the official VISA / Mastercard rate (yes, worse than the bid rate, not the mid-market rate); as a result, Revolut is worse than 3 other cards I have in my pocket during the weekend…


Totally agree, thanks for pointing on that problem again and again.
If I hadn‘t been a more or less active/passive member of this forum, I would have fallen into the weekend trap during my recent US holiday trip.
So I exchanged enough EUR -> USD on Friday to be NOT charged with a markup by paying on werkends.

Transparency is everything!

Revolut, listen to the Community…

1 Like

personally I only use revolut for exchanging.
if I make a payment I need to be sure the exact amount arrives and pre-pay any fee from any intermediary. if I want to make a purchase I need to know I’m getting a good exchange despite the day of the week.


Hi again, Andreas!

I don’t recall any recent private messages related to this- anyway, thanks for looking into this and responding. This is really appreciated!

Now- if you carefully track my support team discussion, going back to my private history, you will notice the test transaction for $0 on May 6h, 21:12 Polish time.
The rate was: 0,2751 on Sunday. That’s the whole point!

That was the real rate I’d get on that Sunday, if I purchased something more that $0.

How is the 4th of May closure rate you listed: 0,2820 related to 0,2751 on Sunday anything close to 0,5%?
What methodology and calculation is used?

Well let me answer it myself partially- no matter how you want to calculate it, 0,2751 vs. 0.2820 is 2,5% in real money you pay from your Revolut PLN account. That’s the bottom line.

Another weekend is coming up. I can surely make more test transactions in EUR or USD and compare real rates Friday vs. the weekend.

A bunch of people have noticed similar weekend rate discrepancies. It’s hard for me to believe you can’t notice it. IT. IS. THERE.

And of course, to re-iterate what Lukasz and others repeated here over and over again- it’s all fine!
We can get our “major” currencies ahead of time. We can accept the imperfect rate on weekend.
Just be honest with us and tell us ‘We really don’t know what the weekend rate is going to be, b/c markets are closed, so you can expect anything from 0,5% to … X%’. That’s the reality anyway…

Omg dude really?? I’m amazed how a few people here act. Really!

I think the issue here is that you badly want to prove Revolut wrong. Well, if it’s not for you then leave it, find another service more suitable for your needs, or use your traditional bank card.

Again, if I’m not mistaken you are referring to a reverted (so no rate applied) transaction that was made 20 hours later than the other one and by the end of the day (when the market was probably open again).

However, you’re avoiding to discuss or refer to a previous successful transaction made on 2018-05-06 01:51:58 Sunday, which proves that the right mark up was applied (0.05%).

Friday’s closure 0,2820

  • 0,5% mark up -> 0,00141
  • Friday’s closure - markup -> 0,2820 - 0,00141 = 0,28059

0,28059 vs. 0.27989 Almost identical

I want to be super clear so I’m going to recap my points:

1st) You were checking a reverted transaction of 0£ 20 hours later. Which gives us 3 points: a) No rate was applied & b) the market was probably opened again, 3) No mark up

2nd) There was a transaction made at the same day however, 20 hour earlier from the 0£ reverted transaction which proves me right: 0.5% applied.


Andreas K.

1 Like