13-letnia Waris Dirie (Soraya Omar-Scego) pochodzi z rodziny somalijskich pasterzy-nomadów. Zgodnie z wolą bliskich ma zostać czwartą żoną znacznie starszego mężczyzny. Nie mogąc sprzeciwić się ojcu, Waris decyduje się na ucieczkę. Dociera do Mogadiszu, gdzie mieszka rodzina jej matki. Krewni wysyłają ją do Londynu. Tu dziewczyna przez kilka lat pracuje jako pokojówka w somalijskiej ambasadzie. Po wybuchu wojny domowej w Somalii placówka ta zostaje zlikwidowana. Waris (Liya Kebede) grozi deportacja. Dzięki pomocy Marylin (Sally Hawkins) zamieszkuje w pensjonacie, należącym do Pushpy Patel (Meera Syal). Po jakimś czasie Dirie zwierza się Marylin, że jako pięciolatka została obrzezana. Przyjaciółka namawia ją na operację. Tymczasem Waris zauważa sławny fotograf mody, Terry Donaldson (Timothy Spall). Zaprasza ją na sesję zdjęciową i przedstawia agentce mody Lucindzie (Juliet Stevenson). Kobieta zaczyna przygotowywać ją do pracy na wybiegu.