I joined their programme in 2009 and had a number of stays in various NH hotels. Here was my experience: I had booked both stays in the same hotel on their website, logged in to my NH World account.
1st stay. "Have you ever stayed at this hotel before?" No. "Have you ever stayed at an NH hotel before?" Not sure. Check-in agent searches their system for about five minutes whether I can be found somewhere. They don't and give me a registration card to fill in my address. I remind them that I am an NH World member and booked the stay through their website, so they should already have this information. No, they don't.
2nd stay (a few months later). "Have you ever stayed at this hotel before?". Yes. Check-in agent searches their system for my last stay and can't find it. I give them my NH World number, and they find no trace of me. I am handed the registration card again.
This was the moment when I gave up on them as a loyalty programme. If they can't manage to find data on a guest who has booked through their own webpage, has a frequent customer number that he can provide and has stayed in that very hotel a few months ago, then how can a loyalty programme work?