In X-ray imaging, it is common practice to normalize the acquired projection data with averaged flat fields taken prior to the scan. Unfortunately, due to source instabilities, vibrating beamline components such as the monochromator, time varying detector properties, or other confounding factors, flat fields are often far from stationary, resulting in significant systematic errors in intensity normalization. In this work, a simple and efficient method is proposed to account for dynamically varying flat fields. Through principal component analysis of a set of flat fields, eigen flat fields are computed. A linear combination of the most important eigen flat fields is then used to individually normalize each X-ray projection. Experiments show that the proposed dynamic flat field correction leads to a substantial reduction of systematic errors in projection intensity normalization compared to conventional flat field correction.