In x-ray photoelectron spectroscopy (XPS), a sample is exposed to low energy x rays (approximately 1 keV), and the resultant photoelectrons are analyzed with high precision for kinetic energy. After correction for inelastic scattering, the measured photoelectron spectrum should reflect the valence band density of states, as well as the binding energies of several core electronic levels. All features in this spectrum will be modulated by appropriate photoelectric cross sections, and there are several types of final-state effects which could complicate the interpretation further. In comparison with ultraviolet photoelectron spectroscopy (UPS), XPS has the following advantages: (1) the effects of inelastic scattering are less pronounced and can be corrected for by using a core reference level, (2) core levels can also be used to monitor the chemical state of the sample, (3) the free electron states in the photoemission process do not introduce significant distortion of the photoelectron spectrum, and (4) the surface condition of the sample does not appear to be as critical as in UPS. XPS seems to be capable of giving a very good description of the general shape of the density-of-states function. A decided advantage of UPS at the present time, however, is approximately a fourfold higher resolution. We have used XPS to study the densities of states of the metals Fe, Co, Ni, Cu, Ru, Rh, Pd, Ag, Os, Ir, Pt, and Au, and also the compounds ZnS, CdCl2, and HgO. The d bands of these solids are observed to have systematic behavior with changes in atomic number, and to agree qualitatively with the results of theory and other experiments. A rigid band model is found to work reasonably well for Ir, Pt and Au. The d bands of Ag, Ir, Pt, Au and HgO are found to have a similar two-component shape.