Not completely specific primers and suboptimal reaction conditions (annealing temperature, magnesium ion concentration, Taq polymerase concentration, primers concentration are the main reasons for the appearance of non-specific PCR products
2.Make conditions of your PCR programm more stringent.
3. Make sure your primers are well designed, if your gene of interest have multiple sequence repetition and primers are on those repetitive regions it can give you non specific product.
4. Make sure there is no contamination in your sample, for that do a PCR with positive and negative control and run on agarose gel along with your (pcr) samples with ladder.
5. If you are using master mix confirm if it is contaminated or not.
6. If making cocktail for PCR increase amount of Mgcl2, it can help.
7. Its a very common problem in PCR if you are optimizing the anealing temperature of your primers make conditions stringent.
(For example your primers Tm is 58°C try somewhere around 60°C, 61°C.)