It’s hard to build your email list properly, but it’s the only way to go. Email Marketing results vary with the size of the list.
A good way to get people to sign up for your newsletter is to offer a discount right after signup. Place a banner ad on your site, above the fold, with a call to action to enter their email address and get $10 off their next purchase.
You will have people sign up just to get the coupon, but you would probably get more out it in the long term. I just used $10 off as an example, you can try anything else that you think may work better in your industry.
Image Courtesy: Jolante