They kind of occupy two different niches, IMHO. I see Nim more as a competitor to Go, whole Zig wants to replace C mostly and somewhat competes with Rust in that regard.
Zig has a work in progress C backend so it does not only generated llvm IR. Also to ve more specific Zig is macros are awesome but best implemented as C++'s comptime.
Zig is (a much) better C. Few solid features.
Nim is a better (Pascal+python+lisp)/3. Lots of features. Some are solid.