### Abstract

We present a systematic search for optical counterparts to 13 gravitational wave (GW) triggers involving at least one neutron star during LIGO/Virgo’s third observing run. We searched binary neutron star (BNS) and neutron star black hole (NSBH) merger localizations with the Zwicky Transient Facility (ZTF) and undertook follow-up with the Global Relay of Observatories Watching Transients Happen (GROWTH) collaboration. The GW triggers had a median localization of 4480 deg^2, median distance of 267 Mpc and false alarm rates ranging from 1.5 to 1e-25 per yr. The ZTF coverage had a median enclosed probability of 39%, median depth of 20.8mag, and median response time of 1.5 hr. The O3 follow-up by the GROWTH team comprised 340 UVOIR photometric points, 64 OIR spectra, and 3 radio. We find no promising kilonova (radioactivity-powered counterpart) and we convert the upper limits to constrain the underlying kilonova luminosity function. Assuming that all kilonovae are at least as luminous as GW170817 at discovery (-16.1mag), we calculate our joint probability of detecting zero kilonovae is only 4.2%. If we assume that all kilonovae are brighter than -16.6mag (extrapolated peak magnitude of GW170817) and fade at 1 mag/day (similar to GW170817), the joint probability of zero detections is 7%. If we separate the NSBH and BNS populations, the joint probability of zero detections, assuming all kilonovae are brighter than -16.6mag, is 9.7% for NSBH and 7.9% for BNS mergers. Moreover, <57% (<89%) of putative kilonovae could be brighter than -16.6mag assuming flat (fading) evolution, at 90% confidence. If we further account for the online terrestrial probability for each GW trigger, we find that <68% of putative kilonovae could be brighter than -16.6mag. Comparing to model grids, we find that some kilonovae must have Mej < 0.03 Msun or Xlan>1e-4 or phi>30deg to be consistent with our limits. (Abridged)