He married Anne Devereux, daughter of Walter Devereux, Lord Chancellor of Ireland and Elizabeth Merbury. They had at least ten children:
* William Herbert, 2nd Earl of Pembroke (5 March 1451 - 16 July 1491).
* Sir Walter Herbert.
* Sir George Herbert of St. Julians.
* Philip Herbert of Lanyhangel.
* Cecilie Herbert.
* Maud Herbert, Countess of Northumberland. Married Henry Percy, 4th Earl of Northumberland.
* Katherine Herbert. Married George Grey, 2nd Earl of Kent.
* Anne Herbert. Married John Grey, 2nd Lord of Powis.
* Isabel Herbert. Married Sir Thomas Cokesey.
* Margaret Herbert. Married first Thomas Talbot, 2nd Viscount Lisle and secondly Sir Henry Bodringham.
William had two illegitimate children but the identity of their mother or mothers are uncertain:
* Sir Richard Herbert. Father of William Herbert, 1st Earl of Pembroke (1551 creation).
* Sir George Herbert of Swansea. Married Elizabeth Berkeley,