I would recommend you choose IIT over NIT any day irrespective of the branch because it is recognized globally. The quality of packages and roles offered are also better and with the right motivation and determination, one can even change his branch to a better one.
At IIT Kanpur, I would advise you to go for Chemical rather than Civil. BTech Chemical Engineering combined with Masters in Petroleum Engineering is the highest paying bracket in the USA with more than 74000 Jobs available for outsiders in the Middle East, US, and Canada at a five yr median of $ 18600.
Additionally, at IIT Kanpur the ocean of electives to choose from enables you to pursue CS course side by side through certifications in 64/128/256 bit SSL Encryption, Data Structures, and Oracle which have great importance. While CS students can be found everywhere, you will find only a few Chemical Engineers.
Concludingly, it’s best to go for IIT Kanpur Chemical for the long term or IIT Kanpur Civil with a branch change to EEE or Mechanical in mind.