De Haan was born in Capelle aan den IJssel. He played club football for Excelsior Rotterdam and Feyenoord Rotterdam. He won the 1998–99 Eredivisie title with Feyenoord and was a late substitute in the 2002 UEFA Cup Final, in which Feyenoord beat Borussia Dortmund.