Data  hiding  techniques  have an  important  role  with  the  rapid  growth  of  intensive  transfer  of  multimedia  content  and  private communications.  Steganography  is  the  art  of  hiding  information  in  different ways  that prevent  detection by unintended user.  The Steganography used to transfer data and information from one source to other source through public channel in hidden way. Steganography hides the existence of message so that the information is transferred in stealthful way.  Steganography means hiding a message (the embedded message) within a larger one (source cover file) in such a way that an observer cannot detect the presence of the hidden message.  Many  different  carrier  files can  be  used,  like digital  images  which are  the  most  popular on Internet. For hiding secret information in images, there exists a large variety of Steganography techniques some of which are simple and some are  more  complex  than  others  and  all  of  them  have strong  and  weak features. Various applications have different requirements of the Steganography technique used. This paper intends to give an overview of image Steganography, its uses and techniques.  It  also  attempts  to  identify  the  requirements  of  a  good  Steganography  algorithm  and  briefly  reflects  on  which Steganography techniques are more suitable for which applications.