João Mário bestritt über 70 Länderspiele für Portugals Nachwuchsnationalteams. Er nahm an der U-17-Europameisterschaft 2010, der U-19-Europameisterschaft 2012, der U-21-Europameisterschaft 2015 sowie 2013 am Turnier von Toulon und der U-20-Weltmeisterschaft teil. Am 11. Oktober 2014 debütierte er unter Nationaltrainer Fernando Santos im Rahmen eines Freundschaftsspiels gegen Frankreich in der A-Nationalmannschaft.