제1막
일본에 주둔하는 미 해군 중위 핀커턴은 그의 신부 조초 상과 함께 집을 산다. 그는 미국 영사 샤플리스에게 조초 상에 대한 열렬한 사랑에 대해 이야기한다.
핀커턴은 «구백구십구 년» 동안 그녀와 함께 살 계획이지만 일본 여성과의 결혼은 미국에서 유효하지 않기 때문에 결국 그는 여전히 미국 여성과 결혼할 수 있다고 말한다. 핀커턴의 경박함이 샤플리스를 화나게 한다.
샤플리스는 핀커턴에게 어린 소녀의 삶을 망치지 말라고 설득하고 그가 짊을 맹세의 심각성을 설득하려 한다. 그러나 핀커턴은 영사의 충고를 무시한다.
일본 소녀들의 웃음소리가 들린다. 조초 상과 그녀의 친구들이 나타난다. 그녀는 친척과 친구들을 핀커턴에게 소개하고 그를 위해 조상의 종교를 포기했다고 밝힌다.
결혼식은 나비의 삼촌인 본제의 등장으로 방해된다. 그는 배교자가 된 나비를 저주한다. 친척과 손님은 경멸어린 마음으로 떠난다. 핀커턴은 나비를 진심의 사랑에 대한 말로 위로한다.
제2막
핀커턴이 미국으로 떠난 지 몇 년이 지났다. 그리고 그에게서 소식은 없지만 나비는 여전히 남편이 곧 돌아올 것을 믿는다. 나비의 하녀 스즈키가 불상 앞에서 기도하고 있다. 조초 상은 그녀를 부드럽게 꾸짖는다. 샤플리스는 나비를 위한 편지를 들고 들어온다. 핀커턴이 미국 여자와 결혼을 했다는 소식을 조초 상에게 전해 달라는 편지이다. 그러나 고로가 등장해서 나비를 부유하고 고귀한 야마도리 왕자와 결혼하라는 말로 샤플리스에게 방해가 된다. 나비는 공손하지만 단호하게 왕자의 제안을 거절한다. 샤플리스는 핀커턴이 나비를 떠나면 어떻게 할 것인지 조심스럽게 묻자 그녀는 자살할 것이라고 당당하게 대답한다. 샤플리스는 비극적인 결말이 불가피하다는 것을 깨닫는다.
갑자기 항만에서 대포 소리가 들린다. 조초 상은 배를 보고 핀커턴이 돌아왔음을 기대한다. 사랑하는 사람을 기다리는 나비는 스즈키와 함께 집을 벚꽃으로 장식한다. 그녀는 웨딩 드레스를 입는다. 밤이 가깝지만 핀커턴은 여전히 나타나지 않는다.
제3막
새벽이 온다. 불면증에 지친 나비는 방으로 간다. 그녀가 없을 때 핀커턴과 샤플리스가 집에 나타난다. 스즈키는 핀커턴의 귀환에 대해 말할 수 없이 기뻐하지만 그와 동행하는 미국 여성을 보고 나쁜 일을 예감한다. 샤플리스는 핀커턴에게 떠나고 나비를 만나지 말라고 설득한다. 핀커턴은 집과 그의 추억과의 부드러운 작별을 마치고 떠난다.
방으로 달려온 나비는 핀커턴이 아니라 낯선 여자와 함께 있는 샤플리스를 발견한다. 나비는 울고 있는 하녀를 보고 무슨 일이 일어났는지 깨닫는다. 핀커턴의 아내 케이트는 조초 상에게 자신의 아들을 포기해 달라고 간청한다. 결국 조초 상은 동의하지만 핀커턴이 직접 간청을 해야 한다고 요청한다. 샤플리스와 케이트가 핀커턴을 데리러 떠나자마자 조초 상은 단검을 꺼낸다.
그녀는 아들에게 작별 인사를 하고 자신을 찌른다.