CRISPR-Cas9 technology provides a powerful system for genome engineering. However, variable activity across different single guide RNAs (sgRNAs) remains a significant limitation. We analyzed the molecular features that influence sgRNA stability, activity and loading into Cas9 in vivo. We observed that guanine enrichment and adenine depletion increased sgRNA stability and activity, whereas differential sgRNA loading, nucleosome positioning and Cas9 off-target binding were not major determinants. We also identified sgRNAs truncated by one or two nucleotides and containing 5' mismatches as efficient alternatives to canonical sgRNAs. On the basis of these results, we created a predictive sgRNA-scoring algorithm, CRISPRscan, that effectively captures the sequence features affecting the activity of CRISPR-Cas9 in vivo. Finally, we show that targeting Cas9 to the germ line using a Cas9-nanos 3' UTR led to the generation of maternal-zygotic mutants, as well as increased viability and decreased somatic mutations. These results identify determinants that influence Cas9 activity and provide a framework for the design of highly efficient sgRNAs for genome targeting in vivo.