The present invention relates to a method for preparing a composition comprising nanoparticles of a noble metal functionalised with at least one type of metal complex and surfactant. The method comprises providing a first solution comprising nanoparticles and surfactant, and a second solution comprising a first type of metal complex, and adding the second solution to the first solution. Each nanoparticle has a loading of at least 500 and the method permits independent control of particle size and loading and enables large particles with high loading to be reproduced without agglomeration.