The senator had previously described the Republican candidate as "utterly immoral" and a "pathological liar"
Republican senator Ted Cruz has finally backed Donald Trump for US president.
The Texas politician was one of the last candidates to withdraw from the party's nomination race back in May.
In a Facebook post today, Cruz said: "After many months of careful consideration, of prayer and searching my own conscience, I have decided that on Election Day, I will vote for the Republican nominee, Donald Trump.
"I’ve made this decision for two reasons. First, last year, I promised to support the Republican nominee. And I intend to keep my word. Second, even though I have had areas of significant disagreement with our nominee, by any measure Hillary Clinton is wholly unacceptable — that’s why I have always been #NeverHillary."
He says there are six key policy differences that separate him and the Democrat - citing issues surrounding the Supreme Court, Obamacare, energy, immigration, national security and Internet freedom.
"Our country is in crisis," he added. "Hillary Clinton is manifestly unfit to be president, and her policies would harm millions of Americans. And Donald Trump is the only thing standing in her way."
The endorsement may come as something of a surprise, given the senator's past criticism of the Republican candidate.
Just before withdrawing from nomination race, Mr Cruz described Trump as "a pathological liar" who does not "know the difference between truth and lies" - particularly referring to claims made by Donald Trump linking Cruz's father to Lee Harvey Oswald.
"This is nuts. This is not a reasonable position... this is just kooky," Mr Cruz told reporters.
He went on to say Trump was "utterly immoral... morality does not exist for him" and that "everything in Donald's world is about Donald".
Senator Cruz also refused to endorse Trump during a speech at the Republican National Convention.