Depends on how much you want to buy it for.
http://uk.pcpartpicker.com/products/video-card/#c=186,370&sort=a8&page=1
Yes, you can find a GTX 970 for £200...but you can also find models that cost more than twice as much. In contrast, the most expensive RX 480 is running for £255, but you can also get one for £221.
What you should do is:
1)
Double-check what resolution you can play at. Both the 970 & 480 are solid cards for 1080p resolutions; the 970 was Tom's Hardware's pick for "maxed-out" play back in April (their last update to the GPU list), & the 480 is right there with it. However, if your monitor can only make it to a lower resolution (say, 1280x720, or 1366x768), then either card is going to be overkill. Conversely, if your monitor can go up to 1440p (or you plan on buying a new monitor that can reach that), realize that both of those cards will have some issues, & you may want to consider a better one (R9 390/390X, GTX 980/980Ti/1070, maybe even a GTX 1080).
2) Once you verify which cards you need to pick from,
compare their benchmarks. Don't waste your time, though, with games that you don't play or plan on playing. For example, I don't play GTA V; never had any interest in the franchise, & don't plan on ever playing it. So basing a future GPU purchase on how it performs in a GTA game is of
zero help to me. Now, Battlefield 4 & Starcraft 2 are both games that I own, & being a big fan of Star Wars I could see purchasing SW: Battlefront in the future. So, using those gaming benchmarks for my decision make a whole lot more sense. Don't just look at which card "beats" the other one, though; also consider & make note of the "edge" each card has on the other. For example, if card A "beats" card B by 10 FPS in game X, but both are able to get over 100FPS, then the "win" for card A isn't that significant. OTOH, if card B beats card A by 10 FPS in game Y, but only card B was able to hit 60+ FPS, that's a much more significant "win".
3) Consider the price of the cards. There will probably be a lot of "personal opinion" in this, but it comes down primarily to a) can you afford the GPU, & b) is the extra performance worth the extra price? Obviously, if the card costs £300 & you can only afford to pay £250, then you have a hard choice of waiting to get the new card or deciding to go with your 2nd-best option. And that's where "b" comes into play: if your first choice costs 30% more than your second choice, but only offers a 10% performance boost
in the games you play/want to play, then are you willing to pay the extra cash for it, or do you logically -- at least to my way of thinking it seems logical -- decide to save your cash so that you can pick an option that will still be "good enough"?