I set up a new throwaway virtual card on Revolut every time I sign up for a free trial or rolling subscription. After that card is used to verify payment method or to pay an initial subscription fee, I just freeze or delete the card. Freezing works well because you see the failed transactions coming through later, and it's a good reminder to delete the app if you're no longer using it.
I use a similar service from a different provider. Having a different card for different merchants is useful in general.
But doesn't Revolut charge you anyway for the "legitimate" post-cancel transactions? NatWest, Barclays etc. do.