Villanueva de Puerta es una localidad española situada en la comarca Odra-Pisuerga, perteneciente al municipio de Villadiego. Está situada 11 km al noreste de la capital del municipio, en la carretera provincial BU-V-6013 entre Villaúte y La Piedra. La baña el arroyo denominado RíoVillahernando, afluente del río Brullés.