We operate a cashback site with clients from all over the world. Our business model is pretty simple.

  1. A client registers to us and finds products or services he/she likes.
  2. The client goes to our contracted partner's site through our referral link and registers there. This way he/she will be put under our referral network.
  3. After this, we'll receive lifetime commissions after every purchase/payment/commission he/she makes at our partner.
  4. We share the majority of our revenue with the client. They make money, we make money, our partner makes money. Everybody is happy.

For example: John finds our site via an Google AdWords ad. He registers to a poker room via our referral link. He plays a lot and generates $1,000 in commission to the poker room in a month. According to our contract, we receive 50% of the referred users's commission so we receive $500. And we usually give 80% back to our users, leaving John with $400 additional revenue in cashback on our site.

What we'd like to achieve is to somehow track customer lifetime value and be able to segment this data by sources and channels. (To segment it geographically would be a cherry on top.)

There's two way I'm thinking of right now.

1. Google Analytics

These types of segmentations are already avilable for us in Google Analytics and we use UTM parametered URLs for our campaigns. We can also figure out where our registrations are coming from in Analytics and we can segment this data in a lot of ways. That's very good and we can gain a lot of information from it.

However, we'd like to push our revenues back to Analytics. It's not easy because a user generates revenue every day or every week for a very long period of time. It's not like e-commerce data when we have a purchase and we know where it came from because when the revenue is made the user is not even on the site. (A background script calculates all the revenues every day and adds it to users' balances.)

2. Own database + Data mining tool

Of course, our revenues are linked to users in our database, so this information is present there. What we lose with this method is all the data from Google Analytics. Traffic sources, channels, geographical info, devices, etc. What we do is saving UTM parameters in our database so at least we can know which campaign they're coming from but we cannot track organic search and referrals for example.

We'd like to have the Analytics data and segmantation possibilities (and of course the pretty GUI) with our revenue data "by user".

3. Any other ways?

I know this is very similar to E-Commerce but because of this lifetime revenue model we cannot figure out how to do it properly. Maybe there's another way we're not thinking of. If you know something good to overcome this issue, please feel free to share with me. :)

Thanks for your help in advance.

1 Answer 1


I'm just looking at doing this myself, have been doing some research and it appears if when the user signs up, you can submit a user ID to google which can be used as a future reference. After that you just need to submit the ongoing figures you mentioned to google with that ID. There is related info on how to do it here, https://www.lunametrics.com/blog/2016/02/18/tracking-customer-lifetime-value-in-google-analytics/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.