NOTE: PyPy is more mature and better supported now than it was in 2013, when this question was asked. Avoid drawing conclusions from out-of-date information.
- PyPy, as others have been quick to mention, has tenuous support for C extensions. It has support, but typically at slower-than-Python speeds and it's iffy at best. Hence a lot of modules simply require CPython.
PyPy doesn't support numpy. Some extensions are still not supported (Pandas,SciPy, etc.), take a look at the list of supported packages before making the change. Note that many packages marked unsupported on the list are now supported. - Python 3 support
is experimental at the moment.has just reached stable! As of 20th June 2014, PyPy3 2.3.1 - Fulcrum is out! - PyPy sometimes isn't actually faster for "scripts", which a lot of people use Python for. These are the short-running programs that do something simple and small. Because PyPy is a JIT compiler its main advantages come from long run times and simple types (such as numbers). PyPy's pre-JIT speeds can be bad compared to CPython.
- Inertia. Moving to PyPy often requires retooling, which for some people and organizations is simply too much work.
Those are the main reasons that affect me, I'd say.