In this paper, we propose an efficient motion consistency based motion estimation algorithm for H.264/AVC. According to a proposed metric of motion consistency, each block is categorized as either a motion consistent block or a motion inconsistent block. Different motion estimation methods are employed for different types of blocks. For a motion consistent block, efficient diamond search or hexagon search is employed depending on the extent of motion activity contained in the local neighborhood; for a motion inconsistent block, we propose a dynamic hierarchical search method yielding a good tradeoff between efficiency and accuracy. For most of the test video sequences as used in our experiments, the proposed algorithm leads to a significant advantage in computational efficiency at only slight increase in coding bitrate and/or slight decrease in peak signal-to-noise ratio, when compared with a set of peering algorithms.