The 670 is a better bang for your buck, but the 960 is slightly more powerful, and provides a better experience.
960 has a faster GPU, but the 670 isn't far behind. The 670 also has better memory bandwidth, but the 960 has better compression, so that part is roughly equal. They also both have 2gb of ram.
There are some clear advantages for the 960 though. First it is new, not used, so it should go longer without issue, but if the 670 is in good condition it might not matter. Second, it uses less power 170w vs 120w. This also means it is quieter. It also overclocks well, so if you do overclock it will be even more powerful compared to the 670. Finally the 960 is a maxwell card, which means it gets better drivers support in some cases, and you get a few cool futures like DSR, which would let you play certain older or less demanding games at 1800p, and down sample it to 900p, which is like the ultimate form of anti-aliasing.
None of these advantages in their own make the 960 much better, but together it's simply a better experience (cooler, quitter, more consistent with better drivers.) and a little bit more powerful. So even though the performance per dollar if the 670 is going to be slightly better, I would get the 960.