I live in Jing'an (Shanghai) and work in Lujiazui (Pudong). About 8km. Here's what each option actually cost me in time and money over 5 work days.
Metro (Line 2)
Time: 32–38 mins door to door
Cost: ¥4
Pros: Reliable, consistent, air-conditioned
Cons: Rush hour is a sardine can, no seats
Verdict: Best on time, worst on comfort
Didi Express
Time: 25–65 mins (HUGE variance)
Cost: ¥28–45
Pros: Door to door, can work/read in back seat
Cons: Traffic is unpredictable, surge pricing mornings
Verdict: Good on good days, nightmare on bad days
Taxi (flag down)
Time: 20–55 mins
Cost: ¥30–50
Pros: Slightly faster than Didi somehow? Drivers know shortcuts
Cons: Harder to find during rush hour, meter anxiety
Verdict: Fine for urgent trips
Shared bike + Metro combo
Time: 40 mins
Cost: ¥5.5
Pros: Exercise, avoids the worst metro crush
Cons: Sweaty, weather dependent
Verdict: Best on nice days
My actual routine now:
Metro in the morning (reliable, need to be on time), Didi home if I'm tired or it's raining. Bike + metro if weather is perfect.
Surprise finding:
Didi is NOT always faster. On Tuesday morning it took 58 minutes because of an accident. Metro was 34. That's ¥40 vs ¥4 for almost DOUBLE the time.