Puccini basó su ópera en parte en el cuento "Madame Butterfly" (1898) de John Luther Long, que fue dramatizado por David Belasco.