A colour image-hiding scheme is presented which can hide multiple colour secret images into one colour host image of the same size imperceptibly. The proposed scheme uses the error diffusion technique to convert colour secret images into colour halftone images. Then the results are encrypted and embedded in the colour host image. In order to provide the embedded image and the extracted image with good visual quality, a bit-adjustment mechanism and a low-pass filter are employed in the embedding and extraction procedures, respectively. The scheme does not need to refer to the original host image. In addition, it satisfies the basic image-hiding requirements: high hiding capacity, imperceptibility and data security. The experimental results demonstrate that the proposed scheme can achieve a better stego-image quality as well as extracted secret image visual quality. In addition, compared with other colour hiding schemes, the scheme can embed more secret colour images.