O livro é narrado em terceira pessoa, por um narrador onisciente e onipresente, que conta tudo de modo muito descritivo e poético. O casal protagonista é formado pela índia Iracema e pelo português Martim, que se encontram quando a índia está fazendo sua sesta (repouso após o almoço) e se assusta ao ouvir o estranho, o que lhe faz atirar uma flecha em Martim.
Vendo que o rapaz não reagiu ao ataque e que não tinha más intenções, Iracema o socorre e decide levá-lo para sua tribo, a dos tabajaras.
Chegando lá, Martim é recebido pelo pajé Araquém (pai de Iracema), com quem firma um acordo de defesa da tribo. Em troca de proteção, o pajé oferece ao português uma boa hospedagem e muitas mulheres belas. Porém, Martim não toca em nenhuma mulher, pois só tem olhos para Iracema, a virgem dos lábios de mel.
Em meio a sua estadia, Martim descobre que Iracema detém o segredo de jurema (uma fruta com a qual se faziam rituais muito sagrados), e que por isso ela deveria manter sua virgindade.
Porém, ele passa a se apaixonar cada vez mais pela índia. Ela corresponde ao seu amor, para a grande inveja de Irapuã, guerreiro tabajara que é apaixonado por Iracema e que tenta prejudicar e ferir Martim.
O casal acaba vivendo um romance proibido e, quando Martim precisa partir para uma guerra com outra tribo, Iracema decide ir com ele e levá-lo até o amigo do português, o guerreiro Poti.
Martim resolve fazer uma cabana para ele e Iracema. Lá, descobre que ela ficou grávida e, mesmo com os apelos da índia, de que não queria ser deixada sozinha, o português parte junto com o seu amigo para defender a tribo dos tabajaras, sem se despedir de sua amada.
Após o retorno de Martim, as coisas não são mais o que costumavam ser. Ele sente saudade de Portugal, sua terra natal, enquanto Iracema sente saudade do seu povo, com quem não pode mais viver depois de ter desrespeitado a tradição e fugido com o português, abandonando sua virgindade.
Depois de um tempo, Iracema dá à luz a um menino, que ela nomeia Moacir. Logo após ter o bebê, ela procura por Martim e descobre que ele foi para a guerra novamente, o que a chateia muito.
Iracema recebe a visita de Caubi, seu irmão, que sempre a ajudou e cuidou dela. Ele fica muito feliz em conhecer seu sobrinho. Porém, Caubi nota que a irmã está acabada fisicamente e mentalmente, e que, por tristeza e saudades do amado, acaba não tendo mais leite para amamentar o recém-nascido.
O final de Iracema é triste: a índia acaba morrendo e entregando seu filho aos braços de Martim. A criança é a prova do amor dos dois, filha de uma indígena e um português, tornando-se o primeiro cearense de muitos outros que viriam.