We prove that the set of cyclic vectors for a von Neumann algebra in a Hilbert space
H is a
G

set, which is empty or dense. We obtain some corollaries, for instance: if (
A
1,
A
2 ...) is a sequence of von Neumann algebras in
H, and if each
A
n has a cyclic vector and a separating vector, then there exists a vector in
H which is cyclic and separating for each
A
n. For algebras of local observables, we improve the known results connecting the infinite type of the algebras and the existence of cyclic and separating vectors.