Closed Bug 414989 Opened 18 years ago Closed 17 years ago

Affiliate Program for Spread Firefox - determining affiliate downloads

Categories

(Websites Graveyard :: spreadfirefox.com, defect, P1)

defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: drolnitzky, Assigned: abuchanan)

References

()

Details

Attachments

(1 file, 4 obsolete files)

For version 2 of the affiliate program, we'd like to be able to connect downloads referred by individual members of the affiliate program. Currently we can only determine clicks to the Firefox download page. In order to better connect downloads referred by specific affiliates, we'll need to be able to carry the referral string from each individual download button/banner through to the firefox download page to the redirected download.html page. The user should get an offer of a specific build of Firefox with an AUS channel set specifically to the affiliate program. This bug should specifically address the dev changes that need to be done to the mozilla.com site (specifically the Firefox download page) in order for this referral string to carry-through properly.
I discussed this a bit with David last week. I had thoughts on how to do this, and here are some steps to discuss: - add sfx id as a query param that gets sent to mozilla.com - add logic to mozilla.com to retain that id to send to download.html - backfill sfx affiliate counts based on download.html stats based on sfx Some areas for concern: - how do we retain the sfx id with caching enabled? I think PHP would be fine since the URL is unique, and if it gets cached it's not a big deal. - are these changes to mozilla.com okay with the owners? clouserw/pkim/jslater? David, what's your tentative schedule for this project?
Thanks Mike. In terms of schedule, ideally we'd be able to have a solution in place by mid March, with a Affiliates Program "relaunch" sometime early in Q2. Let me know how this sounds. Copying pkim to confirm these changes to mozilla.com are ok and Justin to keep him in the loop.
I have also posted a ticket here https://bugzilla.mozilla.org/show_bug.cgi?id=417443 which relates to this topic matter. Thanks Paul
I think the best way to do this would be to put in some js on the download page and have it look for an aid and sfx in $_GET. When it finds them, it does an xmlhttprequest to a script on spreadfirefox.com that does the tracking. The remote script would have to handle any spam/duplicate logic. Can spreadfirefox handle the extra traffic? Does that sound like a reasonable solution?
Thats sound v.good to me . We have some code on spreadfirefox that can prevent spam by ip/referrer and that allows only a single referral event from an IP within a 24 hour period
Sounds great guys. What are next steps to implementing?
We need to place some javascript on the download button onclick="startInstallation(); .. " with startInstallation() calling a 'page' somewhere to update our affiliates table , this would be something along the lines .. function startInstallation() { try { var req = new XMLHttpRequest(); req.open("GET", page, false); req.send(""); } catch (e) {} } I'll look at writing the server page tomorrow that captures the download referral on the server. Paul
I think the next steps are: 1) Create server page to capture download counts 2) Load test server page to make sure it can handle the amount of traffic we'll send at it (or get r+ from IT) 3) Create patch for mozilla.com and request review here
1) Create server page to capture download counts This has now been implememented as follows .. When an affiliate referral is now redirected to the download page we pass the uid of the affiliate and an aid specific to the affiliate referral event. Later if you were to do an XMLHTTPREQUEST to go to www.spreadfirefox.com/node/&uid-..&aid=.. when someone clicks on the download button to download firefox then this will result in a call to _sfx_affiliate_referral_download_event() in our sfx_affiliates module which will register the affiliate referral event as leading to a download event. These changes have been committed with revision 10559. http://viewvc.svn.mozilla.org/vc/projects/spreadfirefox.com/trunk/modules/sfx/sfx_affiliates/sfx_affiliates.module?r1=10328&r2=10559
Attached patch sfx_affiliates.module patch (obsolete) — Splinter Review
Attachment #304436 - Flags: review?(morgamic)
I'll now give attention to the code that will generate reports from the collected affiliate referral download data. <Alix> Are we going to modify our current program so that we measure only affiliated downloads and no longer give consideration to affiliate referrals in all of our reports (Top 5 Affiliates ,..) ?</Alix> Paul
<Alix> I have made the final modifications to the sfx_affiliates module so that the code now generates reports from the collected affiliate referral download data. Ill hold these changes back though until we decide how we are going to make the transition to the affiliates downloads program. I would say a lot of people already think we are measuring downloads in fact there are two posts now on the main page that are highlighting the 500+ millions downloads. How do you see the transition taking place ? I personally would like to do something close to the following ... 0. Publicly explain the change over fully so everyone knows what the current affiliate program measures and what the new program measures 1. Create a static page with information about our most active affiliate referers to date and perhaps a static block on the front page for a time giving some publicity to our top 10 affiliate referers of all time. 2. Start the new affiliate download program with everybody begining with 0 affiliate referral downloads Looking forward to seeing the new affiliate program up and running Paul </Alix>
I agree that some education is in order here and your #0 and #1 points above make sense. However, I think we can do some basic math to approximate the number of downloads of all the current affiliates. I've estimated that the click-->download rate is about 22%. While this is a *very rough* approximation based on a limited set of data, we could apply a similar factor to all affiliate "clicks" and come up with a standard way to convert clicks to downloads. I believe that would be a better transition than starting everyone from 0. As a next step, I will work on some copy for this transition that we will post. We'll also need to revise the existing content about how the program works. Once we have that in place, we can flip the switch and push the new code to staging (if we have staging) and then live. How does that sound to everyone? Will the current copy-paste code on the affiliates page buttons need to be revised? Assuming that since it has a referring id in it already that we don't need to change it. Before we push the download counting change live, we'll also want to spin up a custom build of Firefox that will have a unique AUS channel so that we can track the affiliate program active usage (in aggregate) as we do other partner builds and how we did funnel-cake. This build will need to be available for anyone who hits the download page with a referring url of the affiliate program.
I personally think it would be nice to see and be able to say that since such and such a day this amount of people have been to my site clicked on my banner and downloaded firefox (fact) rather than seeing a figure that i know represents an approximate guess of the number of downloads + number of actual downloads. Thats just my opinion but i would imagine there are other who want to see a big figure there what ever it means ;-) Yes we have a staging area on mozilla server . "Will the current copy-paste code on the affiliates page buttons need to be revised? " .. nothing needs to be changed here David I didn't get what that AUS channel was about until know , very interesting .
Comment on attachment 304436 [details] [diff] [review] sfx_affiliates.module patch Paul, can you submit an patch against current trunk? Thanks.
Attachment #304436 - Flags: review?(morgamic) → review-
I pulled the sfx_affiliates.module from trunk and can see the that all changes have been commited as per the patch
Would you let me know please if the changes are ok to push through to production. Alix will advise when this can be done Thanks Paul
Is there a way to test this on trunk and make sure that we are indeed counting downloads with this new patch?
Not presently . On my local machine running spreadfirefox i can .. click on a link .. http://spreadfirefox2:8888/node&id=103751&t=216 which take me to mozilla , download marked as not done.. http://en.www.mozilla.com/en/firefox/?from=sfx&uid=103751&aid=1310478 then if i simulate the XMLHTTREQUEST to the server on clicking the download button, ie click on the link.. http://spreadfirefox2:8888/node&uid=103751&aid=1310478 the download is marked as done
Mike/Wil -- any thoughts on next steps for verifying this? @ Paul - do we have the database reporting setup to enable users to receive points from downloads? Or are points still equivalent to clicks? @ Kev - we're also looking to get a build of Firefox spun which is an exact copy of vinalla flavored firefox but which has a distinct AUS channel for the affiliate channel. What are next steps to making this the default offer for anyone who lands on mozilla.com via an affiliate button/link?
(In reply to comment #22) > Mike/Wil -- any thoughts on next steps for verifying this? I wrote my ideas in comment #9 and it looks like we're on step #2 now.
What is the peak requests per second we will expect from this?
A rough guess from looking at urchin stats for the download page says about 3 or 4 hits per second. Maybe someone else has a better idea of how to judge that? Marketing did some campaigns once - that might give better numbers.
We can start with that number. If I set up a sfx instance what URL should I be testing?
At lunch morgamic mentioned pulling all this data from the spreadfirefox logs. Seems like a way better idea since no call to spreadfirefox would be required.
Is that a manual process or can we setup some sort of feed?
It would be a cron job, so it would run it on a certain interval.
(In reply to comment #22) > Mike/Wil -- any thoughts on next steps for verifying this? > > @ Paul - do we have the database reporting setup to enable users to receive > points from downloads? Or are points still equivalent to clicks? > Currently we have the drupal code that captures user clicks / downloads but only generates report for clicks . Also i have a patch which which will generate reports for downloads only
Is this bug still active its currently assigned to "Nobody"
Hi all -- per comment #9, looks like we're on step #3 here. Morgamic/Wil -- let me know who I should assign this too. Paul -- what are next steps to implement the drupal code so that we can get download reporting? We'll also have to spin up a build for this -- should just be a generic build of Firefox with a unique AUS channel set (and designated for the affiliate program).
(In reply to comment #32) > Hi all -- per comment #9, looks like we're on step #3 here. > > Morgamic/Wil -- let me know who I should assign this too. > > Paul -- what are next steps to implement the drupal code so that we can get > download reporting? > I just need to roll the attached patch again > We'll also have to spin up a build for this -- should just be a generic build > of Firefox with a unique AUS channel set (and designated for the affiliate > program). >
Attached file sfx_affiliates patch (obsolete) —
I'll be around this evening David if you want this patch on stage today so we can test everything and push to production. Do we have a new schedule for completing the changes to the affiliate program ? Regards Paul
Attached patch sfx_affiliates patch (obsolete) — Splinter Review
Modifications that allow tracking of affiliate referral downloads instead of just affiliate referrals
Attachment #304436 - Attachment is obsolete: true
Attachment #322100 - Attachment is obsolete: true
Attachment #322118 - Flags: review?
(In reply to comment #32) > Hi all -- per comment #9, looks like we're on step #3 here. You're skipping step #2 and comment #27 - comment #29. I may be completely wrong but is this something omniture has built in? Oremj would know for sure - if not, ignore me. :)
With omniture, we could somehow incorporate an tag onto each button or banner so that we could see the clicks and downloads. However, I don't think we'd be able to pull this download data dynamically into the affiliate program rankings. And we'd somehow have to generate those tags dynamically for each affiliate ID and banner type. But Oremj could probably clarify. In terms of timing -- a relaunch of the Affiliates Program is a goal for this quarter (so up and running by end of June). I consider the change to download counting as an integral part of the relaunch.
Alex, could you take a look at this? Let's talk about it on Monday.
Assignee: nobody → buchanae
I like the parsing logs option (or using omniture if possible) because... - we lower traffic over sfx.com - there are people & tools around that rock at parsing our logs for stats - no need to load test sfx.com, or touch the code base If we gather stats from logs, do we even need to hit sfx.com? Reason I ask is that the current model means the entire Drupal system has to be loaded for every affiliate redirect Is there a difference between parsing sfx logs and moz.com logs? For example, could we... - in the affiliate button code, link directly to target site * (only 2 currently; mozilla.com and the mozilla store) * use a link like comment #21 http://en.www.mozilla.com/en/firefox/?from=sfx&uid=103751&aid=1310478 - on target site, carry params through if appropriate - mozilla.com, carry through to download.m.c link (or moz-eur,china redirect) - link to SFX affiliates build - parse target site traffic logs, look for SFX parameters - put parse script on a cron job to tally SFX affiliate count once every ______ Also, oremj: (or someone who knows): does Omniture provide an API or someway so we can access stats programmatically? So that we could transfer stats from Omniture to the SFX DB. Also, is this use allowed by the license? How do Omniture tags work? ^^ my 2 cents for today, please correct me if I'm wrong/dumb about anything
I think it is possible to export reports in excel or CSV format and we could group the from and uid query parameter for a custom report. I'm not sure how feasible it is to export the document via a script.
so does comment #40 sound like a reasonable solution? Paul/clouserw anything I'm missing? I'm working on the code, want to know any hang ups before I get too deep into it.
Re: omniture tracking. Ideally we'd be able to populate a static omniture tracking code within the each button's code on the affiliate button page. For example, something like: http://www.spreadfirefox.com/node&id=187399&t=307?utm_source=sfx&utm_medium=banner&utm_content=80x15&utm_campaign=sfx Question is: will the utm paramaters carry through the url after the redirect and will it show properly in omniture? Is there a way to generate this code to every banner that's posted? If we're able to add this, this will be extremely helpful in being able to evaluate the performance of the program in addition to download tracking and active users (via custom build).
Very insightful Alex , please find my replies inline .. (In reply to comment #40) > I like the parsing logs option (or using omniture if possible) because... > - we lower traffic over sfx.com > - there are people & tools around that rock at parsing our logs for stats > - no need to load test sfx.com, or touch the code base We should definitely do this if there are tools that allow us to easily implement this approach > > If we gather stats from logs, do we even need to hit sfx.com? No we don't . We could pull the apache logs daily somewhere parse the logs and then add the new records to the affiliates table Reason I ask is > that the current model means the entire Drupal system has to be loaded for > every affiliate redirect Yes , that's a good point. > > Is there a difference between parsing sfx logs and moz.com logs? > > For example, could we... > - in the affiliate button code, link directly to target site > * (only 2 currently; mozilla.com and the mozilla store) > * use a link like comment #21 > http://en.www.mozilla.com/en/firefox/?from=sfx&uid=103751&aid=1310478 Yep , we can do this > > - on target site, carry params through if appropriate > - mozilla.com, carry through to download.m.c link (or moz-eur,china redirect) > - link to SFX affiliates build Yep , you can do that > > - parse target site traffic logs, look for SFX parameters > - put parse script on a cron job to tally SFX affiliate count once every We will need to populate the 'affiliate' table with all the affiliate referral events so that the affiliate module can generate all of our reports as seen @ http://www.spreadfirefox.com/admin/affiliates/ ______ > > > Also, > oremj: (or someone who knows): does Omniture provide an API or someway so we > can access stats programmatically? So that we could transfer stats from > Omniture to the SFX DB. Also, is this use allowed by the license? How do > Omniture tags work? > > > ^^ my 2 cents for today, please correct me if I'm wrong/dumb about anything >
is there any difference between $uid and $aid? I think this is probably a subtlety of the SFX affiliate module, just wondering if they are both necessary, because affiliates are just SFX users right? Can we just track them with their user ID ($uid)?
aid : affiliate id which is unique to a particular affiliate referral uid : user id of the user aka affiliate
Hi all, I was just wondering what the status was on this and what we need to do to keep this going.
Juliana, hey, sorry to let this bug go stale. I have been working on this. I have some code for mozilla.com and a start on the log parse script. I will clean up the mozilla.com code and post it here soon for approval. The log parse script needs some work to tally and parse results. soo... what's left, 1) get mozilla.com code reviewed/accepted 2) finish log parse script 3) rework SFX affiliate button code 3) work on getting custom builds from download.m.o (custom AUS channel) 4) test the final setup 5) work with IT to put things in place 6) launch new buttons, site content, etc on SFX Juliana, or whoever is heading this project, what kind of launch schedule do you have in mind? Webdev seems to have a lot of priority projects going on, and the summit coming up, so let's set up a schedule.
Hi Alex, Thanks so much for the speedy response. This bug is part of a Q3 goal to relaunch the Spread Firefox Affiliates Program. So I was hoping that this could be ready to roll out with the other changes to the program by the end of Q3.
Component: www.mozilla.com → spreadfirefox.com
OS: Mac OS X → All
Priority: -- → P1
Hardware: PC → All
Blocks: 449270
Blocks: 449267
to install the attached script, 1) set DB settings to production SFX DB 2) set log dirs for moz-com and dl-moz-org 3) set proper log naming format for moz-com and dl-moz-org 4) should run on cron, once a day
new affiliate button code style committed in r18800
new script should handle log file naming conventions and multiple files, still needs config for sfx prod DB and log dirs. should run once a day, preferably in off-peak times (if there is such a thing)
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Product: Websites → Websites Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: