The best short description of when not to use NoSQL that I've ever seen is from a reddit comment by bucknuggets
a key-value pair data store isn't optimal storage in the perfect world since data quality is very difficult to manage, reporting is a nightmare, and since most data doesn't map elegantly to key-values app complexity grows.
but it may be a very effective storage solution at certain scalability thresholds
Then for sites below those thresholds it is premature optimization - that adds unnecessary risk to the project.
I read that Post and got it fine and informative.