To be blunt, Freetrade isn’t likely to pay the £4 per user on a monthly basis for people to get live pricing. A limit order is good for 90 days, so go and check the price on Google (which is generally live or very close to live for LSE listings) and then come back and set your limit order.
To clarify, a sell limit order will sell at your price or better, if that price is hit and there is a buyer. Meaning, if you set your sell limit at £2.90 a share and the price at some point in the next 90 days hits at least that, it will sell. If that price is £2.95 a share, you get the extra. It’s only not going to execute (assuming there’s enough buyers etc) if the price fails to reach at least the price of your limit order. It doesn’t need to be exact. Similarly, a buy order would execute if the price went below the maximum you were willing to pay.
If you set your limit sell at 2.90 and it was 2.95 it would execute, as its above your limit. If it was 2.85 it wouldn’t. If you’re worried find the bid and ask values maybe on Yahoo or LSE. Depends how desperate you are to sell I suppose.
If you want to set a sell set price, just use a limit order rather than an instant order and wait for the price to move to that level so that the exchange market maker(s) pick it up. I believe that the limit order can stay open for a fairly long period and so once this is set, you can sit back and wait for the order to get filled.
I agree this is probably what the OP is referring to - in this case, Freetrade will buy/sell using live pricing even if there is a delayed price for you to see. So if it hits the target figure and there is a buyer, the trade should complete.