Ambientato a Glasgow a metà degli anni '70, Ratcatcher è visto attraverso gli occhi del dodicenne James Gillespie (William Eadie), un ragazzo perseguitato da un segreto. Sentendosi sempre più lontano dalla sua famiglia, la sua unica via di fuga arriva con la scoperta di un nuovo complesso residenziale alla periferia della città dove ha la libertà di perdersi nel suo mondo.