Eletään vuotta 1665. Griet (Scarlett Johansson, Lost in Translation) on köyhän hollantilaisperheen 17-vuotias tyttö, joka isänsä sokeuduttua joutuu elättämään perhettä menemällä piiaksi taidemaalari Johannes Vermeerin (1632-1675) (Colin Firth,Rakkautta vain) taloon. Vähitellen kaunis Griet valloittaa itse mestarin mielenkiinnon. Hän herättää kuitenkin Vermeerin perheessä niin epäilyksiä kuin suoranaista mustasukkaisuuttakin. Myös taidemesenaatti Van Ruijven (Tom Wilkinson, Tahratonmieli) on iskenyt silmänsä tyttöön. Värikkäiden tapahtumien kautta Griet päätyy lopulta Vermeerin kuuluisimman maalauksen