Silica bilayers are built up of two layers of corner sharing SiO4–tetrahedra and constitute an inert ultra-thin membrane supported on the Ru(0001) surface. We have investigated the adsorption of CO on that system using DFT with inclusion of dispersion corrections. The molecules adsorb at the interface between the SiO2 film and Ru(0001) surface. The estimated barrier for diffusion of CO through the silica bilayer is around 0.5 eV. The CO bond length, the C–O stretching frequency and the silica–ruthenium distance depend strongly on the CO coverage. The band observed at 2051 cm− 1 in previous experiments can be assigned to a CO coverage of around 0.5 ML on Ru(0001), with the silica bilayer floating above the CO molecules.