Иван Стоянов е юноша на ОФК Сливен 2000. Минава през всички юношески гарнитури на клуба, а на 18-годишна възраст през 2001 г. дебютира и за мъжкия тим. По това време ОФК Сливен 2000 играе във В футболна група и Иван бързо става звездата на отбора. През лятото на 2005 г., малко сензационно, Стоянов осъществява трансфер в немския елитен ФФБ Щутгарт, като в клубната каса на ОФК Сливен 2000 влиза сумата от 100 000 евро. В Германия обаче, той почти не получава шанс за изява, като изиграва едва един двубой за „швабите“ в Първа Бундеслига. Така, закономерно, година по-късно, Иван Стоянов се завръща в родния Сливен. У дома той напълно разгръща потенциала си, и с негова помощ за три години ОФК Сливен 2000 се изкачва до А футболна група. В този период Стоянов изиграва 75 мача, в които реализира 41 гола. Добрите му изяви и многото голове не остават незабелязани и през лятото на 2009 г. той преминава в ПФК ЦСКА (София)[1].
Дебютира за Лудогорец на 11 септември 2011 г. в срещата от петия кръг на А ПФГ между Лудогорец и ПФК Славия завършила с голяма победа с 6 – 0 за Лудогорец. На 30 септември 2011 г. отбелязва в последната минута на мача първия си гол за тима в срещата Ботев (Враца)-Лудогорец 0 – 1. Става голмайстор на А ПФГ за 2012 г. с отбелязани 16 гола, като разделя първото място заедно с Жуниор Мораеш[2].