I've booked an apartment via booking.com (in Yerevan, Armenia), the host has even confirmed the possibility of check-in time that I have specified. I did not pay anything, because this was a "no credit card required" listing (as many are in Armenia).
Now, a day before checking in, the host wrote to me via booking.com asking to contact them via whatsapp and giving their phone number. I contacted, and they informed that they will not be able to host me. I replied that any such information should go via booking.com chat so that booking.com support will see it. They did not follow up on booking.com chat.
I've contacted booking.com support, informing them of this situation. At the beginning they were very helpful, and after trying to contact the host they suggested two alternatives. However, one was just a room in a hotel far from the city center, while my original booking was a full-equipped apartment right in the city center, and the other was an AirBnB (sic!) apartment that lacked some amenities that were present in my original booking.
After I explained this to booking.com support staff, they told me that I can book something myself, and they will refund the price difference, but they specified an upper limit on this refund, which turns out to be ~3.5% of the initial booking price. Obviously, I can not find any good accomodation on short notice with such a tight price bound.
(And I've tried to book the AirBnb listing that they have suggested, but it turned out to be not available.)
So, is this a typical booking.com compensation policy? I would expect them to be more generous, and at the very least compensate the price difference up to some 20-40% or more.