Simon (Nick Robinson) é um jovem de 17 anos que leva uma vida normal, mas não revelou a ninguém que é homossexual, e sofre por ter que esconder isto de todos. As coisas pioram quando ele se apaixona por um colega de classe.