São João da Serra es una freguesia portuguesa del concelho de Oliveira de Frades, con 12,21 km² de superficie y 643 habitantes (2001).
Su densidad de población es de 52,7 hab/km².