Villaviudas es una localidad y municipio en la provincia de Palencia, en la Comunidad Autónoma de Castilla y León, España.
Está a una distancia de 18 km de Palencia, la capital provincial. Se encuentra situado en la ribera del Río Pisuerga, en la comarca de El Cerrato.