At any rate, I really recommend against the 960 2GB. Buying a 2GB video card in 2015 is asking for a bottleneck in 2016 or even this fall. A 4GB 960 or 4GB Radeon 380 should be minimums if you want longevity. But a Radeon 290 or a GTX 970 are much better - often SLI 960s are lucky to even match them.
Truth be told, I tend to recommend against these mid-tier cards if users plan to upgrade every generation or even every other. Here's why (partially stolen from anandtech).
The move from GTX 660 to 760 added just 26% in performance
The move from GTX 760 to 960 added a measly 14% in performance
http://www.computerbase.de/2015-03/geforce-gtx-460-560-660-760-960-vergleich/2/
Compare this to spending more for a Radeon 290 (300).
That means going from GTX660 to 960 added just 44% more performance but the
difference between 960 OC and R9 290 OC is 47%.
What that means is if one buys a 200-250 960, you are going to have to buy yet another 150-200 card next generation just to get to where an after-market 290 is today. That means it's going to cost between 350-450 (minus any resale value of GTX960) just to get to R9 290's (300 right now) level of performance some time in the future but it also means getting way
less performance from now until that next gen card. For that reason, 380/960 -- neither of them makes sense at current prices if someone thinks about the total cost of ownership long-term and that the are foregoing a lot of performance all that time for what a 50-$100 savings?
So that shows why the 960 and 380 are not good choices if you plan to upgrade every gen or two. But think about if you plan to keep it in the long haul, wouldn't you want a card that's 45%+ faster to make that long haul easier? 290, 290X, 390, 970 are all very similar tier of performance so it applies to all of these (right now 290 appears cheapest for your country though).