I den nordlige del af kommunen ligger de prækvartære lag, dvs. de lag, som blev afsat før istiderne, i 50‑70 m’s dybde og består af kalksten fra Danien. Mod syd når lagene op i 30‑50 m’s dybde og består af grønsandskalk og ler fra Paleocæn. På Hedelandssletten ved Vindinge og Vor Frue hhv. sydøst og syd for Roskilde består de prækvartære lag også af grønsandskalk, som her ligger i blot 2‑10 m’s dybde.
Lagene fra Prækvartær dækkes af aflejringer, som blev afsat af is og smeltevand i de to seneste istider. De ældste istidslag består af moræneler og -sand fra næstsidste istid, Saale, som overlejres af moræneler og smeltevandsaflejringer fra sidste istid, Weichsel. På sletten Heden findes desuden udbredte lag af sand og grus, der blev aflejret i et flodsystem og kan følges ind i Høje-Taastrup og Greve Kommuner. Nordligst i kommunen domineres aflejringerne af smeltevandssand og -grus, som optræder i op til 50 m tykke lag. De øverste lag i kommunen består især af moræneler, og i klinterne ved Klinten, Bolund, Risø og Veddelev kan man følge de to yngste morænelerslag, som blev aflejret i slutningen af Weichsel.
Ferskvandsaflejringer, som er afsat siden sidste istid, kan findes langs åer og i vådområder som Gundsømagle Sø og Store Kattinge Sø, hvor der er dannet lag af tørv og ler. Kommunen rummer også flere kilder, hvor der er udfældet kildekalk. Kildekalken (frådstenen) er tidligere blevet indvundet og brugt til bl.a. kirkebyggeri. Langs kysterne i Roskilde Fjord ses havaflejringer af sand og ler. Der indvindes grundvand fra lagene af danienkalk og grønsandskalk samt fra lagene af smeltevandssand og -grus.