«Иоланта» и «Щелкунчик» были заказаны Чайковскому дирекцией Мариинского театра. Считается, что идея соединить в один вечер одноактную оперу и двухактный балет принадлежит директору Императорских театров Ивану Всеволожскому. В июле 1891 композитор начал работу над оперой, в сентябре был готов клавир, а в декабре закончена оркестровка.