This study presents a new adaptive data-hiding method based on least-significant-bit (LSB) substitution and pixel-value differencing (PVD) for grey-scale images. The proposed method partition the cover image into some non-overlapping blocks having three consecutive pixels and select the second pixel of each block as the central pixel (called base-pixel). Then, k-bits of secret data are embedded in the base pixel by using LSB substitution and optimal pixel adjustment process (OPAP). The difference between the base-pixel value and other pixel values in the block are utilised to determine how many secret bits can be embedded in the two pixels. Also, the method divides all possible differences into lower level and higher level with a number of ranges. Then, it obtains the number of the secret bits that will be embedded into each block depending on the range which the difference values belong to. The experimental results show that the proposed method can embed a large amount of secret data while maintaining a high visual quality of the stego-images. The peak signal-to-noise ratio (PSNR) values and the embedding capacity of our method are higher than those of three other data-hiding methods which are investigated in this study.