They don't make money from it. They are giving no deposit bonuses purely for marketing purposes. It is their way of attracting new players. Once these players try playing with the casino site, they will eventually make an initial deposit, and that's when the casino site starts to make money.