Er war der einzige Sohn des Grafen Arnulf II. von Flandern (* 961; † 988) und der Rozela von Italien (* 950; † 1003) von Italien, Tochter von König Berengar II.. Seine Mutter heiratete darauf König Robert II. (* 972; † 1031) von Frankreich. Der sie 992 verstieß (Kinderlosigkeit) und entzog ihr obendrein die Morgengabe, nämlich den für flandrische Herrschaft wichtigen Seehafen Montreuil mit seiner Burg.
In erster Ehe (ca. 1012) heiratete er die Nichte der Kaiserin Kunigunde, Otgiva von Luxemburg. Mit der er den einzigen Sohn und Nachfolger Balduin V. hatte. Nach deren Tod im Jahr 1031, ging er eine zweite Ehe ein, mit der Tochter des normannischen Herzogs Richard II., Eleonore. Aus der Ehe ging eine Tochter heraus, Judith von Flandern.