The three-dimensional structure of human cytochrome P450 3A4 was modeled based on crystallographic coordinates of four bacterial P450s; P450 BM-3, P450cam, P450terp, and P450eryF. The P450 3A4 sequence was aligned to those of the known proteins using a structure-based alignment of P450 BM-3, P450cam, P450terp, and P450eryF. The coordinates of the model were then calculated using a consensus strategy, and the final structure was optimized in the presence of water. The P450 3A4 model resembles P450 BM-3 the most, but the B' helix is similar to that of P450eryF, which leads to an enlarged active site when compared with P450 BM-3, P450cam, and P450terp. The 3A4 residues equivalent to known substrate contact residues of the bacterial proteins and key residues of rat P450 2B1 are located in the active site or the substrate access channel. Docking of progesterone into the P450 3A4 model demonstrated that the substrate bound in a 6 beta-orientation can interact with a number of active site residues, such as 114, 119, 301, 304, 305, 309, 370, 373, and 479, through hydrophobic interactions. The active site of the enzyme can also accommodate erythromycin, which, in addition to the residues listed for progesterone, also contacts residues 101, 104, 105, 214, 215, 217, 218, 374, and 478. The majority of 3A4 residues which interact with progesterone and/or erythromycin possess their equivalents in key residues of P450 2B enzymes, except for residues 297, 480 and 482, which do not contact either substrate in P450 3A4. The results from docking of progesterone and erythromycin into the enzyme model make it possible to pinpoint residues which may be important for 3A4 function and to target them for site-directed mutagenesis.