Иван Андреевич Макаревич родился 30 июня1987 года в Москве в семье музыканта Андрея Макаревича и Аллы Михайловны Макаревич (Голубкиной)[1], врача-косметолога. Родители Ивана развелись в 1989 году.
С 1993 по 2003 годы Иван учился в гимназии № 45 им. Л. И. Мильграма в Москве[2], начал заниматься музыкой.
Как актёр Иван приобрёл известность благодаря фильмам «Бой с тенью» (2005) в роли Кости и «1814» (2007), где сыграл Ивана Пущина. В 2009 году сыграл юного царя Ивана Грозного в телесериале «Иван Грозный». В 2010 году сыграл молодого Андрея Макаревича в фильме «Дом Солнца».
В 2012 году снялся в продолжении телесериала «Бригада» — «Бригада: Наследник» в главной роли Ивана Белова, сына Саши «Белого». Также снимался в фильме «Метро» в роли помощника машиниста электропоезда. В 2014 году исполнил роль хакера Саши (Ската) в телесериале «Выжить после».
В 2017 году сыграл заглавную роль в клипе группы «Машина Времени» «Пой».
С юности является вегетарианцем. Увлекается созданием модной одежды (в 2017 году выпустил коллекцию под брендом Chipoodl)[5] и дайвингом.
«Сейчас стараюсь ездить с отцом, как только появляется возможность. Это действительно удивительное состояние, ни с чем не сравнимое. Помню своё потрясение, когда я впервые встретил в воде акулу. А когда мы с папой последний раз были в Мексике, я нашёл на глубине очень красивую старинную бутылку, заросшую кораллами. Привёз её в подарок маме, сейчас эта бутылка стоит у нас дома».