XNA Creators Club Online
Page 1 of 2 (32 items) 1 2 Next >
Sort Posts: Previous Next

XBLIG Sales Data Converter Tool - v1.50

Last post 4/17/2010 5:26 PM by UberGeekGames. 31 replies.
  • 12/6/2009 3:29 PM

    XBLIG Sales Data Converter Tool - v1.50

    Attention fellow developers!

    If you have a game released on XBLIG, then you probably want to keep an up-to-the-day tally of exactly how many millions you've made, so you know how to budget for your next trip to your local Lamborghini dealership. :-)

    Unfortunately, the My Business page leaves some things to be desired. While it gives you a quick overview of the current conversion rate and sales, it lists the data in an unintuitive way, with sales and trials for each country on each day in separate lines. This makes tallying up yours sales, trials, units, purchase to trial ratios, and profit a chore, so useful data is most likely being left on the table!

    The XBLIG Sales Data Converter fixes this. It is a simple WinForms app which takes the raw output from the My Business page, calculates profit and purchase / trial ratios, sorts it by date descending, and outputs a chunk of text you can copy into Excel. Using it is simple:

    1) Open up the My Business page, select whatever range you want, and copy all of the cells.
    2a) Start the XBLIG Sales Data Converter, and paste this into the input window.
    2b) Click "Export to CSV", start the XBLIG Sales Data Converter, and click file->Load CSV.
    3) Check "condense countries" if you want to have data for each country, or just lump it into a single day per line.
    3b) You can also include the price on each line if you want to.
    4) Click Convert
    5) Copy the text from the output window, and paste it into Excel. Or, click "export to CSV" and save a spreadsheet-friendly CSV file.
    6) Make pretty line graphs and pie charts with your data!

    In other words, it turns this:

    12/4/2009    Canada    0    1
    12/4/2009    Canada    80    3
    12/4/2009    France    0    2
    12/4/2009    United Kingdom    80    4

    Into this:
    (hmm the forums destroyed the tables that showed up nicely in WordPad, oh well)
     
    Date    Country    Trials    Sales    Units    Conversion    Profit       
    12/4/2009     France     2    0    2    0%     $           -          
    12/4/2009     United Kingdom     0    4    4     100%      $       2.71        
    12/4/2009     Canada     1    3    4    300%     $       2.03     

    Or this:
     
    Date    Trials    Sales    Units    Conversion    Profit       
    12/4/2009    3    7    10    233%     $       4.74     

    Or even this:
    Date    Price    Country    Trials   Sales   Units   Conversion    Profit
    12/4/2009 80 France 2 0 2 0% $0
    12/4/2009 80 United Kingdom 0 4 4 100% $2.71
    12/4/2009 80 Canada 1 3 4 100% $2.03

    Or some combination thereof. :)


    It's not limited to single days - you can take a year's worth of data and plug it in, and it will still sort it. Also, since the default sort options (at least for me) are date ascending but I want them date descending, and it takes FOREVER for them to refresh from clicking Country twice to remove the sort and once on the date to change it to descending, the converter tool automatically sorts it to date descending.

    I have two downloads, one with just the executable, and one with the source:

    Download XBLIG Sales Data Converter Tool - Executable
    Download XBLIG Sales Data Converter Tool - Source

    Note that it's probably not that efficient (if I paste 10 months of data in, it takes about a minute before it appears, but it's now multithreaded and has a progress bar at least), but I had quickly written this for fun to speed up the process of saving my sales data over the past couple days, and thought others might find it useful too. Feel free to improve upon it!

    Enjoy!

    Update v1.50:

    Added CSV import and export options
    Added multithreading via BackgroundWorker and a progress bar for long tasks
    Added option to include price column

    Update
    v1.01:

    Changed "conversion rate" to "purchase / trial ratio", since we can't actually see proper conversion rates. Thanks for pointing that out guys!

    v1.00

    Initial release
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/6/2009 4:08 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    I haven't tested your program, but from what you posted: Aren't you calculating the conversions in the wrong way? How can there be a conversion >100%? Or even "infinity"?

    If every single download is a purchase (= 0 pure trial downloads that did not convert into a purchase), then the conversion rate is 100%, not "infinity". Thus, 100% is the higest possiblee conversion rate.
     
    EDIT: Ah, I see what you mean. What you called "Conversion" is actually the "Purchase / Trial" ratio. But that's a different thing than the conversion rate, isn't it?

    Doc
    Forum Tip: If someone answers your question, don't forget to click Mark as Answer!

    Twitter - Blog - My Game Trailers - www.spyn-doctor.de - Games: Your Doodles Are Bugged! - Kuchibi - Golden Tangram

    Useful for peer reviews and testing your own game: My little "evil" checklist for peer review stress testing
  • 12/6/2009 4:30 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Good question! Here's the algorithm I use to convert it:
    public double ConversionRate 
        get 
        { 
            return (double)Sales / (double)Trials; 
        } 

    It's actually the ration of purchases to trials. I'm not sure that's any different from conversion rate? If you average it in Excel, it comes out to exactly what it says on the My Business page.
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/6/2009 4:32 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    You might have a situation where you have 10 downloads on Monday and 5 of them go on to buy it on Tuesday, but Tuesday might have only had 3 downloads.
  • 12/6/2009 4:33 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    UberGeekGames:
    I'm not sure that's any different from conversion rate?
    Technically it is. Purchase/trial ratio is simply a comparison of trials to purchases. A conversion rate would be some sort of numerical figure that describes how many people first downloaded the trial and purchased the game afterwards. There's no way for us to know whether one of the trials bought the game, so it's not really possible to compute an actual conversion rate. The best anyone can do is a purchase/trial ratio.
  • 12/6/2009 4:48 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Ah okay, I'll change that then. As Nick said, since we can't actually tell if the sales were from people who had already downloaded the game, that's the best we can do.
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/7/2009 2:12 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Changed it! I've updated the binary and source links.
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/7/2009 2:45 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Hmmm... I like the idea, but I want to start a Porche dealership so this probably won't work for me.

    In all seriousness, this is a nice tool, the My business results are really ugly. Does this account for redeemed tokens at all?
  • 12/7/2009 3:30 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    no no no no, I meant to buy the contents of the dealership, not the dealership itself. Regardless, it indiscriminately helps all high end luxury car fans, so you should be OK. ;D

    Thanks. It doesn't account for tokens, at least nothing built in - I thought I read that redeemed tokens counted as a trial, so there's no way to separate them. Unless they're marked differently and I just haven't noticed?
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/7/2009 3:46 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    UberGeekGames:
    Thanks. It doesn't account for tokens, at least nothing built in - I thought I read that redeemed tokens counted as a trial, so there's no way to separate them. Unless they're marked differently and I just haven't noticed?


    It's really hard to tell tokens... here is a sample of Nasty's first day of release...
    8/24/2009 United States 0 661
    8/24/2009 United States 0 1
    8/24/2009 United States 400 5

    As you can see, there are three lines for Nasty. The first line is trials, the second line is tokens, and the final line is purchases.

    I don't really see a good way to tell tokens from trials though, since there won't always be three lines and there doesn't appear to be a good way to tell trial lines from token lines.
  • 12/7/2009 5:48 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    I suppose I could add extra checks to see if there are three lines for the same country on the same date, and assume the smaller value is tokens... Probably not 100% accurate but it'd be a start.

    While I'm tweaking this, any other feature creep ideas? The only other thing I can think of is a checkbox for sorting the data by date ascending or descending, but since you can do that in Excel it's kinda redundant.
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/7/2009 5:59 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    I can't get this to work at all... tried my own data and your example above but keep getting errors...

    For instance, I paste in:

    12/4/2009    Canada    0    1
    12/4/2009    Canada    80    3
    12/4/2009    France    0    2
    12/4/2009    United Kingdom    80    4

    This is from your example in the post above. When I do this, I get the error "Input data is corrupted!"

    Seems to do this for any data that I try.
  • 12/7/2009 6:29 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    I found the problem. You're copying the data directly from the posts, and copying the data from the My Business page to somewhere else before copying and pasting it into the app. Apparently this replaces the \t separator the tool is expecting between values with white space!

    I've finished a workaround and it's uploading now. Also changed the try/catch blocks to output the exception in case there are any other bugs. :)
    [edit]: Upload is now active
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/7/2009 6:44 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    UberGeekGames:
    I found the problem. You're copying the data directly from the posts, and copying the data from the My Business page to somewhere else before copying and pasting it into the app. Apparently this replaces the \t separator the tool is expecting between values with white space!

    I've finished a workaround and it's uploading now. Also changed the try/catch blocks to output the exception in case there are any other bugs. :)
    [edit]: Upload is now active


    Ah ha... Yeah, I have a tendency to paste into Notepad before pasting anywhere else, it gets rid of all kinds of wacky formating that all these apps seem to want to maintain. Tried the new version and it works great.

    Off the top of my head, the one thing that I can think of that would be nice would be to have a way to know how many sales at 400 points, how many sales at 80 points, etc. Even if there was just a column added to the results that had the price, I could probably find a way in Excel to get what I want to see.
  • 12/13/2009 3:12 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Going back to the conversion rate issue - the actual definition of conversion rate is simply the total number of visitors that become customers (ie. purchase your game). So a better measure would be: 

     

    Conversion Rate = Purchases / (Trials + Purchases) 

     

    This would give you a percentage from 0 - 100, and makes it much easier to compare your daily performance. 

     

    The way you are currently doing it could actually be interpreted as a measure of how well the rest of your marketing is performing. For example, if you have twice as many sales as you do trials on a given day (200% using your current formula) then it would imply that you have converted sales from other leads (ie. trailer, screenshots, word of mouth, etc). Its not overly useful but it still plays a role when analyzing your performance.

    Kaleidoscope: DreamBuildPlay 2009 Top 6, get it now on the marketplace! -- Watch the Trailer -- Follow us on Twitter!
  • 12/15/2009 12:05 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Unhandled exception when I hit convert :

    ************** Exception Text **************
    System.IndexOutOfRangeException: Index was outside the bounds of the array.
       at SalesDataConverter.Form1.button1_Click(Object sender, EventArgs e)
       at System.Windows.Forms.Control.OnClick(EventArgs e)
       at System.Windows.Forms.Button.OnClick(EventArgs e)
       at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
       at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
       at System.Windows.Forms.Control.WndProc(Message& m)
       at System.Windows.Forms.ButtonBase.WndProc(Message& m)
       at System.Windows.Forms.Button.WndProc(Message& m)
       at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


    Get this to work, stick an app up on Indie Games that costs 80MSP and is called "Say thank you for the Sales Converter Tool' and you'll make a few hundred sales, I'm sure. ;)
    Games on XNA:FallDown, Choc-a-riffic, BitStream, Rate My Avatar

    Peer Review:Stunning Stunts V1.2 Patch

    Playtest : Steam Heroes
  • 12/15/2009 12:10 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    07/12/2009 0 1 1  Infinity 

    NOW THAT'S THE SORT OF CONVERSION RATE I CAN GET BEHIND!

    If you want feature creep:

    - Load in the CSV file directly
    - Generate nice graphs ;)
    - Resize the windows based on the form size
    - Show a progress bar instead of a message telling me it might lock up for a minute
    Games on XNA:FallDown, Choc-a-riffic, BitStream, Rate My Avatar

    Peer Review:Stunning Stunts V1.2 Patch

    Playtest : Steam Heroes
  • 12/15/2009 12:31 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Hmm, all very good ideas! I'm a bit swamped right now between finishing up Dungeon Adventure and DBP10, but I'll try to find some time to work on it this week.
    ProjectorGames:
    Get this to work, stick an app up on Indie Games that costs 80MSP and is called "Say thank you for the Sales Converter Tool' and you'll make a few hundred sales, I'm sure. ;)

    Well there's the obvious problem of getting said data from the PC to the Xbox and back again on a non-dev build, and contributing to cluttering the channel with useless applications for my own short term financial gain. Maybe I'll do one of those PayPal thingies so I get direct donations instead. ;)
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/16/2009 12:07 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Do you have contact details? The 'contact' button on your website's knackered. I did a few minor tweaks. :)
    Games on XNA:FallDown, Choc-a-riffic, BitStream, Rate My Avatar

    Peer Review:Stunning Stunts V1.2 Patch

    Playtest : Steam Heroes
  • 12/19/2009 6:08 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Update!
    The v1.50 update is released, and includes several cool new features:

    *Built in .CSV import and export
    *Multithreaded long tasks and added a progress bar, instead of locking up
    *Added option to include price column

    I've updated the download links in the first post.

    @Projector: Yep, just fixed the link on my site (thanks for noticing that). You can also check the About box in the new version, or at the top of Form1.cs. ;)
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 12/20/2009 5:36 AM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Good work on this! It's great to see community members pulling together and making life a little easier. I currently have all my sales data in a spreadsheet, but it looks like you've put a lot of work into this system.

    Cheers,
    Matt
    Creed Arena is on XBOX Live Indie Games. Fight other gladiators in a futuristic arena. Check it out now!

    Finally, a chat site for XNA devs. Kick back and chat with fellow Creator's Club members on XNA Chat!
  • 4/15/2010 10:00 AM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Hey GeekGames (or anyone else that has used this before) I can't get this to work at all :(
    This is the exception I get when I try to import the CSV from the site
    This is also the error I get if I put the text though notepad.

     

    Error with data conversion!

    ************** Exception Text **************
    System.InvalidOperationException: Failed to compare two elements in the array. ---> System.FormatException: String was not recognized as a valid DateTime.

       at System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles)

       at System.DateTime.Parse(String s)

       at SalesDataConverter.salesDayComparer.Compare(SalesDay x, SalesDay y)

       at System.Collections.Generic.ArraySortHelper`1.SwapIfGreaterWithItems(T[] keys, IComparer`1 comparer, Int32 a, Int32 b)

       at System.Collections.Generic.ArraySortHelper`1.QuickSort(T[] keys, Int32 left, Int32 right, IComparer`1 comparer)

       at System.Collections.Generic.ArraySortHelper`1.Sort(T[] keys, Int32 index, Int32 length, IComparer`1 comparer)

       --- End of inner exception stack trace ---

       at System.Collections.Generic.ArraySortHelper`1.Sort(T[] keys, Int32 index, Int32 length, IComparer`1 comparer)

       at System.Array.Sort[T](T[] array, Int32 index, Int32 length, IComparer`1 comparer)

       at System.Collections.Generic.List`1.Sort(Int32 index, Int32 count, IComparer`1 comparer)

       at SalesDataConverter.Form1.ConvertData_Complex(BackgroundWorker worker)

       at SalesDataConverter.Form1.<>c__DisplayClass1.<button1_Click>b__0(Object , DoWorkEventArgs )

     

    When I copy it straight from the webpage nothing happens...? This is weird.
    When I copy it from the webpage and into WordPad I get this.

     

    ************** Exception Text **************
    System.ArgumentOutOfRangeException: Value of '118' is not valid for 'Value'. 'Value' should be between 'minimum' and 'maximum'.
    Parameter name: Value
       at System.Windows.Forms.ProgressBar.set_Value(Int32 value)
       at SalesDataConverter.Form1.worker_ProgressChanged(Object sender, ProgressChangedEventArgs e)


    Any idea at how i can fix this?
    Or what’s wrong with my data (Did they change the format?)

     

    Lead Programmer At 2.0 Studios
  • 4/16/2010 12:57 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Interesting. Are you certain that you're selecting a valid range? If, for example, you select half of a day/price range, it will probably crash.

    Can you try downloading the source code and running it from that? Maybe then you can see what the error is. I just used it the other day, so I'm sure that the format didn't change.
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
  • 4/16/2010 4:05 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    I'm 95% sure that i am using the correct data.
    The source code is only for 1.0 so it doesn't support the load csv file etc...

    I figured that if i loaded a csv strait from the xna site it couldn't be me breaking it... but knowing me i have probably overlooked something huge.

    if you have the source for 1.5 i will try to run it in that and just fix it myself.

    Any other ideas? maybe its my pc? i dont know..

    Thanks for the reply :)
    Lead Programmer At 2.0 Studios
  • 4/16/2010 6:38 PM In reply to

    Re: XBLIG Sales Data Converter Tool - v1.00

    Sorry, but you must be doing it wrong. ;)
    I downloaded the source from the link in the first post in this thread, unzipped it and opened it in VS2008 - it is indeed the 1.5 version, with CSV importing. I just tested this myself and everything works.

    Can you try downloading it again?
    "Software is never finished, it is in varying states of 'less broken'" because "If it ain't broke, it doesn't have enough features yet"

    The signature that was too big for the 512 char limit
Page 1 of 2 (32 items) 1 2 Next > Previous Next