A model is presented for placer formation at the grain, bar (10-100)m and reach scales (>1000 m) in gravel-bed streams. The model is based on the processes of erosion and re-deposition of the bed during annual flood events and uses Einstein's bedload function to estimate changes in equilibrium transport rates. Heavy mineral enrichment in a gravel bed is postulated to occur in the voids between framework clasts. It is demonstrated that increases in bed roughness (represented by the D 65 diameter of material in the bed) result in preferential accumulation of heavy minerals, with enrichment increasing as their density increases. At the reach scale, decreasing channel slope from 0.04 to 0.02 also results in enrichment of heavy minerals. Distribution of gold and magnetite predicted by the model is in good agreement with field data for a gravel-bed stream in British Columbia. Samples were collected from counter-current eddies and other low velocity areas containing sands, at gravel bar tails, and from typical bar-gravel deposits. For the purpose of comparison with the model, the sands were assumed to represent the bulk composition of sediment transported by the stream under conditions of falling discharge after the seasonal snowmelt flood. Trends in magnetite and gold distribution along a 5-km reach can be directly related to the model: gravels are sites of heavy mineral accumulation with gold being enriched to a much greater extent than magnetite. As predicted by the model, density sorting is most obvious for the coarser sand fractions. Changes in channel slope along the reach also result in predicted changes in heavy-mineral distribution.