How do I know that it's time to buy running shoes before they start looking like this?
This depends on the quality of the material and even within shoes from the same factory, there can be quite some variation.
In this study Heel-shoe interactions and the durability of EVA foam running-shoe midsoles by Verdejo and Mills from 2004
they found that after 500 km the peak plantar pressures had increased by 100% on average. Furthermore, they did electron microscopy scans that showed structural damage in the foam after 750 km. Since fatigue of the foam reduces heelstrike cushioning, it might cause running injuries.
You can recognize the damage somewhat by the wrinkles that arise on the side of the heel. If you wear the shoes for much longer, you sometimes can feel it getting 'softer' when you try to squeeze it.
Another indication is that the outer layer of your sole is sanded away. If this is quite dramatic, you might start to get a misalignment of the loads. Small note: the material is sanded away because you load it like that, so it's not necessarily a bad thing. And off course if you start to see holes in the upper of the shoe, it probably means other parts (invisible) are worse off.
My advise: bad running shoes are a major cause of injuries! You've been conditioned to let the shoes aid you in the shock absorption and rolling off. If the shoes stop doing this, you don't magically alter your running style! So don't keep running for too long or start to learn to run better.
There are two answers to that question, possibly three. The answer depends on 1) how much you run in a week/month and 2) how hard you run. Conventional wisdom says you should replace your shoes every 400-500 miles. However, if you are only running 10 miles a week, that will mean your shoes will last a year. The foam itself starts to break down and lose its firmness over time. A year should be OK, but if you run say, 100 miles a year, I would not wait 5 years until you replace the shoe. I would, at a minimum, replace a pair of shoes every two years if the mileage is very low.
Or the liberal side if you run very fast you can have have unusual wear patterns. I've seen many people having to replace shoes after 300 miles if the weekly mileage is around 100 miles a week. This is probably unlikely for most people but still something to consider.
Thus, good rule of thumb is 400-500 miles or 2 years, which ever comes first.
Most running shoes need replacing after 300-500 miles. It will be different for everyone. I can usually tell mine are breaking down, because I start to get aches and pains that were never there before when running. If you think your shoes are wearing down, you can take them to a specialty running store. They typically have experts that can look at your shoe and tell what's going on with them.
I've run shoes for 1000km before replacement and I'm an ultrarunner.
There are ultra runners I know that don't start to like a pair of shoes until they've done 100km in them.
The normal advice is by distance. I've never seen any actual evidence to back it up - except that the shoe manufacturers would rather you replace your shoes often.
I would suggest that you listen to your body and figure it out from there. You will notice when your lower legs start to complain - you'll get shin pain, calf pain or similar. That's a good guide for when your shoes need replacements.
I think the are too many variables to really predict when you need new shoes - I've had shoes that last well over 1000kms and some that Ive switched after just 300. And since I guess that most people dont actually count the number of kms they've ran in a pair of shoes, it seems unhelpful to be suggesting a change after a given distance.
The 'conventional wisdom' of replacing shoes after 500 miles has never worked for me. I'd suggest that you will be able to feel the difference in your shoes when you run. I replace mine when they start to feel hard underfoot.
Better still, fix the cause (bad form), not the symptom(aches and pains).
I've seen people take the front part of a shoe and try to fold it together like a taco (i.e. not folding the top of the shoe back to the laces, but rather folding the front of the shoe in half longways like a taco). If they are able to bend it at all, then it is time for new shoes.
Another test, just like a toothbrush or tires on a car, is to check the treads on the bottom of the shoe. if they are gone (or mostly gone on one side), it's time for new shoes.
It depends on how good your bio-mechanics are. If you're running with perfect form and can run in a minimalist shoe or a neutral shoe with little support you can run on them until they have holes in the soles. If your shoes are helping support your arches, keep you from over-pronating, etc. then you need to replace them when they start to break down.
On the later situation: When they break down is strongly dependent on the combination of how poor your mechanics are, and how well the shoe is built. Personally, before I worked on my own form I would get 300-400 miles out of a pair of Brooks. After improving my form I can easily get 800-900 miles on a pair.
I guess the short answer is it varies. However, if you start to develop knee, foot, hip or ankle pain then the first thing you should do is change your shoes!
Flip them over. Is the tread bald on one side? If so, change them. Your pronation has worn your shoes on your dominant side.
Do they hurt? Do you reguarly suffer from blisters or dark toe nails? If so, the cushioning is no longer effective/the running shoes, combined with your socks, offer insufficient room in the toe box. Replace them.
Are the soles spongey? Do you get knee pain? If no to the soles and/or yes to knee complaints, your running shoes are no longe absorbing the shock of striking the ground whilst running. Replace your running shoes.
Hope this helps.