Em Londres um nigeriano, Okwe (Chiwetel Ejiofor), que trabalha como motorista de táxi de dia e à noite é o recepcionista do Baltic, um pequeno hotel. Numa noite, ao vistoriar o quarto 510, repara que o vaso sanitário estava entupido e toma um choque ao saber o motivo do entupimento: um coração humano. Ele pensa em delatar o caso para a polícia mas recua, pois Okwe está ilegal na Inglaterra. Ele só confia realmente em uma pessoa, Senay (Audrey Tatou), uma turca que trabalha no Baltic como camareira.

Um dia, o soldado David chega à casa da família Peterson. Ele diz ser um amigo do filho dos Peterson, morto em combate, e logo é acolhido neste lar. Aos poucos, no entanto, uma série de mortes começam a acontecer entre os membros da família.