Disclosed herein is a process for preparing a polypeptide, preferably glatiramer, or a pharmaceutically acceptable salt thereof, comprising: polymerizing a mixture of protected amino acids, preferably L-tyrosine, L-alanine, L-glutamate, and L-lysine, to form a protected polypeptide; reacting the protected polypeptide with an acid such as a mixture of hydroiodic acid and hypophosphorous acid in acetic acid; optionally, treating the protected polypeptide obtained in step (b) with a reagent such as sodium thiosulfate to reduce the content of molecular impurities; and reacting the protected polypeptide obtained in steps (b) or (c) with a base such as piperidine to form a polypeptide or a pharmaceutically acceptable salt thereof.