This paper presents a data-hiding method based on least-significant-bit (LSB) substitution and an improved Pixel-Value Differencing (PVD) method for grayscale images. The proposed method partitions the cover image into 5×5 non-overlapping blocks. For each block, selects the central pixel as the base pixel and the other pixels in this block are classified into inner-layer and outer-layer. Then, the secret message is embedded into the inner-layer and outer-layer that which method makes this block has minimum Mean Squared Error. The experimental results show that the proposed method can embed a large amount of secret message into the cover image and keeping good stego image quality.