I have made a series of ports from O2, Virgin, and Vodafone, all to '3' Pre-Pay SIMs for their £10 of free credit.
All asked me my reason for leaving, which was simple to give in most cases.
The O2 and Virgin ones were contracts ending which had been free by cashback deals, and I didn't want to start having to pay for my calls !
The Vodafone ones were more tricky. As I had a lot of active SIMs, I often get into trouble with them being "semi-quarantined". When this happens, you have to top up by at least £5 to reactivate the SIM. ( *#1345# says you still have credit, but you hear: "You have used all of your credit" when you try to place a call
). However, I have found that if you request a port, they will tell you that they can't do that while it is semi-quatanined, BUT if you then call customer services, explaining the problem and saying that their PAC department suggests a call to C/S. with a request that they place a small credit on the account, I have managed to get that done 3 times now.
I subsequently ported 2 of them successfully, and decided to keep the third going on Voda.
The only one to really give me trouble was Orange. I had a cashback contract ending with them, and had already given them a month's notice. When I requested a PAC, they refused saying that I would have to start my notice period afresh if I wanted one ! I protested to no avail. Eventually I just told them where to stick their fresh month's notice, and gave up on my porting idea ( thus losing my free £10 credit on 3 Pre-Pay ).