Sometimes transaction size is 1847 bytes and sometimes 225 bytes . What does it depend? And how learn what will be transaction size before transaction to put proper fee?
it mostly depends on how many inputs you have. If you have a lot of different change addresses in your wallet, and your wallet has to use many of them, it will make the size
bigger. Presumably, a good wallet should tell you the appropriate fee but in this era of congestion, it becomes more difficult to calculate as it is dynamic.
Check this:
https://bitcoinfees.21.co/