I'm on that tariff but I pay £32 a month as I've been an O2 customer a while so I got 1gb for the price of 500mb (£6). They also threw in 50mms messages a month. I also get 500 o2 to o2 minutes and since almost all of my friends and family are on o2 it works out well. If you've been with them a while give them a call and see what they say. 2 years ago I had a similar situation and I just asked and got 2 extras just like that (unlimited o2 to o2 calls and 500mb bolt on, both for free). If not that 3 deal that someone mentioned for £33 seems like a steal. Phone was free on o2 btw.
I might just for the ease go with O2. or i will buy the phone and get a giffgaff sim card!