How to express $1m in a formal document?

Officially, m stands for milli (which means 10-3, i.e. a thousandth), and M stands for mega, that is million.
A $5k or a $2M deal would be better.

More formal would be

a five thousand dollar deal or a $5,000 deal
a two million dollar deal or a $2,000,000 deal.

I would certainly refrain from mixing text and numbers, especially in formal writing, so I would avoid anything using

*$2 million, *$5 thousand


1 million dollar deal — Use words instead: (a) one million dollar deal
$1 million deal — correct, but unidiomatic
1 million$ deal — just plain wrong, currency symbol is not suffixed to words.
$1m deal — correct, but unidiomatic

The options would thus be:

  • One million dollar deal — should be okay
  • A million dollar deal — idiomatic, preferred in literary/ narrative use
  • A $1m deal — use in shortened versions, titles, captions, abstracts …
  • A one million dollar deal — uses the idiom, use for effect.