Bien qu'il soit impossible de dire exactement pourquoi William Shakespeare a écrit « Macbeth », le contexte politique et historique de la pièce donne aux chercheurs des indices majeurs. "Macbeth" sert de mise en garde pour ceux qui menaceraient le roi et agit comme une réaffirmation du droit divin des monarques.
Shakespeare a écrit "Macbeth" en 1606, un an après le complot de la poudre à canon de 1605 et trois ans après l'accession de Jacques Ier au trône d'Angleterre. James I était écossais, et "Macbeth" a peut-être été conçu pour le flatter et faire appel à ses intérêts de plusieurs manières. Le complot de la poudre à canon, qui impliquait des conspirateurs qui remettaient en question la légitimité de la revendication de James à la couronne, s'est terminé par la torture et l'exécution des personnes impliquées. "Macbeth" est destiné à avertir ceux qui tenteraient d'assassiner un roi de leur destin inévitable.
"Macbeth" reflète la philosophie née au Moyen Âge selon laquelle les monarques ont été nommés à la naissance par Dieu et qu'aspirer à devenir une royauté par d'autres moyens est un péché. Cette philosophie était encore répandue à l'époque de Shakespeare et aurait beaucoup plu à Jacques Ier. Le fait que le défaut fatal de Macbeth soit l'ambition signifie qu'il assassine un roi afin d'acquérir le pouvoir, entraînant sa propre chute.
Shakespeare a également fait appel au grand intérêt du roi pour le surnaturel. James I a été directement impliqué dans les procès des sorcières en Écosse, et il aurait été intéressé par la représentation des trois sorcières dans la pièce comme des signes avant-coureurs diaboliques de malheur.