Doesn't that sound a little sneaky and dishonest to you? If the cost of the product is not cash money, but something else, shouldn't you tell the user up-front instead of giving them an ultimatum after they've already spent some time in your service?
I just checked out Facebook: "Your Facebook Timeline: Tell your life story with a new kind of profile. Learn More"
I read the learn more page, there's nothing about violating privacy laws, switching to the timeline so that ads are more compelling, etc. Only after you've signed up to Facebook do they tell you that they've created this "free" service as a way to get your personal information so they can sell it to advertisers, or use your likes to sell stuff to your friends.
I've still never been told by Facebook that they violate PIPEDA and European data laws.
Went to Google, no mention of using your click stream and browsing habits to sell you unwanted ads, and worse, no way to turn them off.
Seems like it's industry standard practice to offer a "free" service so that you spend your time giving data to a company so they can sell it to advertisers. Apparently these companies have employees to pay and servers to buy so can't offer you a completely free service with out getting something from you.
Do I care? Not really, Facebook, Google, get my data, I get a service.
In my opinion, the OP brought the spam complaints upon himself by failing to use an opt-in communication model. Following up with an unwanted email shortly after the user used the service would tend to trigger an adverse reaction - it's the sort of thing that constantly spamming sites tend to do.