Originaire de Suisse, Jean-Philippe Ecoffey débute en 1985 derrière la caméra de son compatriote Alain Tanner dans No Man's Land. Il traverse cependant très vite les Alpes pour tourner la même année aux cotés de Charlotte Gainsbourg dans L'Effrontée, qui lui vaudra une nomination à l'Oscar du Meilleur espoir masculin en 1986. Même reconnaissance l'année suivante pour Gardien de la nuit tourné sous la direction de Jean-Pierre Limosin.
Eternel second rôle, Jean-Philippe Ecoffey n'hésite pas à tourner avec des metteurs en scène exigeants : Catherine Corsini pour son premier film Poker (1986), Andrzej Wajda pour Les Possédés (1988), Olivier Assayas pour L' Enfant de l'hiver (1989) ou encore Philip Kaufman pour Henry & June (1990). Autant de rôles assez austères pour un acteur qui ne connaît le succès public qu'en 1994 avec La Reine Margot de Patrice Chéreau, après un détour du coté de Mina Tannenbaum.
Jean-Philippe Ecoffey retrouve ensuite les ambiances sombres et troubles dans Ainsi soient-elles (1995) puis dans Mon homme de Bertrand Blier avant de se détendre quelque peu dans L' Appartement de Gilles Mimouni. C'est en 1997 qu'il se fait enfin connaître du grand public en incarnant le père de Ludovic dans Ma vie en rose d'Alain Berliner. Retour à un univers plus froid en 1999 avec Rembrandt, où il incarne Jan Six. En 2001, Jean-Philippe Ecoffey retrouve Elsa Zylberstein et Martine Dugowson, respectivement partenaire et réalisatrice de Mina Tannenbaum, pour Les Fantômes de Louba.
Jean-Philippe Ecoffey fait ensuite preuve d'un grand sens de l'eclectisme, jouant sous la direction de Stephen Frears dans Dirty pretty things, enchaînant la comédie Moi César, 10 ans 1/2, 1,39 m avec le film sportif Snowboarder et l'exigeant Douches froides. Après s'être illustré dans Comme ton père et le plébiscité Le Scaphandre et le papillon, il est en 2009 à l'affiche de Commis d'office, aux côtés de Roschdy Zem.