Excellent Analytics Tip#6: Measure Days & Visits to Purchase

Red GreenThere are many good metrics that help us understand customer behavior on our websites. Conversion rate, page views per visitors, average time in website, average number of pages to purchase etc etc, and you can segment them. But sometimes they leave us hungry and unfulfilled.

I have not seen these two metrics a lot in off the shelf packages but I like them a lot because they can be deeply insightful about customer behavior, specifically in context of an outcome.  The metrics are “Days to Purchase” & “Visits to Purchase”. I am sure you've seen them used before, if you have not read on.

(I am using the term purchase here but there is nothing unique about ecommerce, you can use these metrics if your site exists to gather leads or get people to download pdf’s or for tech support. All that is required is a robust understanding at your end of what the “outcome” is on your website.)

Most of the current crop of web analytics metrics (KPI’s if you will) are very much session based. Not all but most of them. The “limitation” of session based metrics is that it presumes a “closure” in one session (one visit if you will). That is usually not the case. Customers visit your website, come back more times, depending on why you exist, and then maybe close the deal (buy, give a lead, get an answer, send your CEO a nasty email about how dysfunctional your website is).

These two metrics are “pan-session” metrics and since they accommodate for how customers really use most website they can be deeply insightful.

Ok enough teasing, here are the specifics (though I have to admit I am much better at this topic in front of a white board than a blog post, I ask for your patience because this is a bit complex)…..


  • Your website uses some kind of “sessionization” methodology. For the most part, regardless of if you use weblogs or javascript tags to collect data sessionization happens using cookies. Either via your web analytics tool or your web server platform. Both are fine.
  • Your website sets both transient session cookies and persistent 100% anonymous “user_id” cookies.
  • Like anything that relies on cookies it is optimal if you are on first party cookies to improve quality (it won’t eliminate error, just reduce it). [PS: If you are not on first party cookies I strongly recommend that you badger your analytics provider to switch you to first party asap, all the big boys/girls support first party cookies.]


  • Avg Visits to Purchase: Average number of sessions from first website interaction to Purchase.
  • Avg Days to Purchase: Average number of days from first website interaction to Purchase.

Why should you measure these kpi’s?

Most often what is lost in all our analysis is the fact that there are many different interactions for someone before they purchase. People come, they see, they come back, they see something else, they go read amazon reviews, they do price comparison and then for some weird reason even though you sell at a really high price they come buy from you.

Session based metrics (say all the off the shelf path analysis reports you see in your web analytics tools on the market today) don’t really illustrate this.

So as you run your affiliate marketing campaigns or your PPC campaigns or direct marketing efforts, what is the value of the first visit by a customer and should you pay more to get customers into the door because they have longevity?

One simple reason to measure these kpi’s is to get a true understanding of “how long” it takes people to buy from your website and is that behavior different across different segments of your website customers. If there is, you can exploit this knowledge to optimize your campaigns, promotions, other efforts to get the best bang for the buck.

How do you measure these kpi’s?

The analytics tools at our disposal simply don’t allow for this kind of sophistication in analysis so we use our data warehouse that contains all our aggregated clickstream and outcomes data. Perhaps your web analytics tool could allow you to do this (if so please do share via comments). We run SQL queries and here is the “query” in english:

  1. Gather all the sessions for the last x amount of time (six months in our case, hence millions of rows, use oracle)
  2. For each session the data you will bring in will depend on your website, I recommend: all cookie values, campaign values, pages.
  3. Organize the sessions by their persistent “user_id” cookie value (often sites use shopper_id as a persistent cookie, just ask your web guys what the name of the cookie is, I am sure you have one)
  4. For each “set”, as in #3, look for the session with presence of your “thank_you” (purchase) page.
  5. For the first metric Visits to Purchase:
    1. Take all the persistent cookie user_id’s for all those who purchased in a given month (say July 2006)
    2. Look back in the data (six months in the above case) to find their first visit
    3. Count of Sessions in the “set” between first visit and purchase visit
  6. For the second metric Days to Purchase
    1. Take all the persistent cookie user_id’s for all those who purchased in a given month (say July 2006)
    2. Look back in the data to find their first visit
    3. Count of Days in the “set” between first visit and purchase visit
  7. Done, get a glass of champagne, you deserve it

What do you do next?

Now you have overall metrics that look something like this (all numbers obviously not real and your numbers will look different):

Days To Purchase


Visits To purchase

This in of itself is really valuable. If this data were real and for your website it would be thrilling to know that a full 81% of people convert in three sessions or less and most of them (62%) on the same day (!!). If you are the half empty kind of gal/guy, it is rather depressing that you are essentially getting just a couple of shots, in just one single day, to convert someone to a purchaser. The chances someone will buy go down dramatically after day zero (the first visit day).

You can obviously make the groupings of visits and days that make the most sense for your business.

What is even more valuable is to segment this data (is that not a good idea all the time!! : )). 

You do the simple one first. Segment by month and get a trend of the data. Are you getting better or worse over time? Is there a seasonality impact of these numbers (so in the dull month of July if people take their own sweet time, rather than valentine's day then you can do different things on your site)?

My standardize advice after that: segment by your core acquisition strategies (examples: affiliate marketing, “direct” traffic, PPC, SEO, referrers from blogs etc). You are going to get a Real understanding of customer behavior because most likely you’ll see something like this:

Visits2Pur Segmentation

Wasn't that a lot of fun? Only to a geek like me you say? I’ll take that. : )

What actions can I take from these Insights?

As you begin to understand pan-session customer behavior you are actually getting into things beyond the surface, things that most web analytics tools don’t provide. This also means that if you get this far, you can develop an understanding that can be a true competitive advantage for you because this is hard to do, even for your competitors.

Actions you can take from these kpi’s could be:

  • Optimize spending on key phrases for ppc campaigns, especially as you bid for “category” terms (with category terms you are betting on getting on the radar “early”, compared to brand key phrases, and if the number of sessions is small from above analysis that would be rather depressing, so put less value on category key phrases – this is a completely hypothetical example).
  • Optimize your website content and structure for different segments. Clearly if I came to you and said you get one session to convince me to buy or I am out, would your website be the same? Probably not, you would throw away all the “extra” content and focus on the most powerful. Alternatively if the data indicated the purchase behavior was long stretched out over days/visits, you could / should provide more content since visitors seem to want more.
  • Optimize “interruptives”. This is very cool, if your web platform allows it. If you know the point of “bailing” (say third session) for your customers, you could attempt to offer up a goodie in the fourth session or based on what they have seen so far show them something more relevant (this is your last chance) or ask for an email address for a future deal or whatever.
  • Other smarter things you can think of but are failing me right now.

Ok so what do you think? Sounds interesting? Are you totally confused? Are you already using these metrics as standard operating procedure? Don’t agree with something above? Please share your feedback via comments.

[Like this post? For more posts like this please click here.]


  1. 2

    We have a unique problem. We have certain categories that sell in the same session and certain others that take a while to convert. Even though we could apply different day for conversion to the different categories. The problem arises while setting tracking mechanism for advertising. Do you attribute for a conversion that is session based or that is more long term.

    Appreciate your response.



  2. 3

    Hi Avinash,

    As usual, an excellent post. I especially like how you referened what _actions_ can be taken based on the data.

    I would like to point out that Google Analytics has a number of reports that address time to e-commerce conversion. The E-Commerce > Loyalty & Latency report section contains the following reports:

    – New vs Returning
    – Time to Transaction
    – Visits to Transaction

    Unfortunately only the New vs Returning visitor transaction report can be segmented easily. The Time to Transaction and Visits to Transaction report simply show a pretty graph that can not be segmented. I'll see if I can't figure out a nice way to dig deeper into the information and write up a blog post.

    Have a great week,


    • 4
      Steve Racicot says

      I wish there was a way to segment the Time to Purchase Reports by Source, etc. and even have Revenue Numbers available. But havent found anything.


      • 5

        Steve: You should be able to segment Time to Purchase report by anything you would like to. Just click on the Add Segment button on top of the report.

        Just be a little careful as you are looking at pan-session data, and this is a session level report.

        A better strategy is to use the Time Lag report in the Multi-Channel Funnels folder. This will give you the revenue view you are looking for. But more than that, this is a pan-session report.

        You will have to create new segments here, click on the button called Conversion Segments at the top of the report.

        If you need more specific help, please reach out to a GACP, here's a list: http://www.bit.ly/gaac


  3. 6

    Loved the post. I really enjoy data extraction and manipulation so this is right up my alley. (does that qualify me as a geek??) The “actions you can take” piece was very beneficial. For me, getting the data and creating the metrics is the easy/fun part!

    We currently just switched analytics vendors and are in the middle of implementation but I’m looking forward to adding these KPI’s to our list once we get up and running.

  4. 7

    Hi Avinash,

    Sorry about the earlier comment that I had written in a hurry. When I read it again, I realised that it does not make sense for someone reading it out of context.

    I have rephrased the same as below and would like to know your response to the same. There is problem that I have in hand that is with regard to the days/ visits to conversion. Ours is a large retail site and we sell different categories. The problem arises on who do we assign the conversion, the search engine that first got the customer to the site or the price comparision site that got the last visit before the purchase. This problem gets compounded if you have different categories that you sell and gets converted at different periods of days/ visits.

  5. 8

    Jasri: My apologies for the late reply. You describe a complex situation and it is always dangerous to propose answers with limited data. But…. : )

    For different categories converting at a different "pace" segmentation is the answer. In the above example I segment by "traffic source" you can just as well segment by product category (and then segment one more level by source for some great insights that you can action).

    For the second part, same person but multiple attributable sources, two thoughts:

    1) Decide on a overall rule for the business. Give credit to the first source or the last one or the one in the middle. Have one rule that is right for your business. This is rife for personal interpretation and since there is no wrong answer people apply their own interpretation, avoid that. Usually people give "credit" to the last one.

    2) What many people are doing with source attribution is computing and assigning a value to each source using a model that works best for them.

    So if this is the behaviour: I came to you website from a search engine, then a affiliate, then price comparison site and purchased. Let's say that my order was for $100.

    Given the % of people who come from search and affiliate and then price comparison you can assign a value to the search key term and the affiliate.

    Each can get "credit" for some part of the conversion. Depending on the number of people moving from one stage to next, number of bailing,
    how soon/late you can come up with a model that assigns the value to each source.

    But it would depend on what is going on in your site at a aggregated macro level and there is a very strong gut level "business smarts" that are required.

    My overall thought would be: start simple, start small and work your way to complexity. I know this sounds obvious.

    I hope this is of some help.

  6. 9

    Hi Avinash,

    I cant help but link this excellent analytics tip to the Eisenberg's book when they describe how impulsive purchases (purchase on first visit) happen on low-risk/cost items, where as for costier items – with more risk involved – purchases usually happen after 3-4 visits.

    Of course this is made very visible with tools such as SiteCatalyst or GA :-)

    An interesting tool would be defining expectations for the number of visits for a given product, by products class.

    "Cars are bought after 4 to 5 visits, toasters after the second visit, usb flash drives upon the first visit"

    Just a thought.

  7. 10

    Thanks Avinash,

    I shall take your advice and start with the simple segmentation first and then move upwards.

  8. 11

    I was wondering if there is any benchmark data out there for online retailers with a broad catalog and customer base on these two reports- time to transaction and visits to transaction. Does anyone know of anything like that?

  9. 12

    Thanks Avinash, for the nice tips

  10. 13

    Hello Avinash,

    Excellent Article. It was just what i was looking for…Though you had posted it two years ago, it is still useful today

  11. 14

    Avinash, love your blog, just ordered your book.

    When will Google Analytics start reporting “Days to Purchase” & “Visits to Purchase” correctly? Measuring from the first visit in from a campaign is, which missed users who came in directly, is (to put it bluntly) retarded, and renders those reports useless. Thankfully we're using User Defined Variables to stamp the actual Join week on our users (along with year of birth and gender), and so can get by, but being able to trust those two reports across the entire userbase would be a very nice-to-have.

  12. 15

    Hi Avinash

    it's a long time ago you wrote this blog . . .

    We think that "days since last transaction" and "visits since last transaction" could be an interesting metric for an ecommerce site. Why? Remember the Recency in the RFM-model.
    Regarding the case we're analysing about half of the customers are 1x buyers and given the customer's b-t-b market it must be possible to improve this.

    In this post you talk about "days TO pruchase" etc. In the meantime this is a standard feature in GA.
    But . . . do you have any advice how to construct metrics like "days since last . . . ".
    I dived into advanced reports / segments etc. but didn't succeed. Maybe we have to implement Custom Variables (session level?)???

    I'm very curious to know how you would approach this

    Kind regards

    Sander Lenselink

    • 16

      Sander: Let me separate two things. "Customer Analytics" and "Visitor Analytics."

      Customer Analytics, loosely, is analyzing people who you can identify by, often, name and address and other bits of Personally Identifiable Information. You have their purchase history stored. You can track them for multi-channel purchases etc.

      Web Analytics tools allow you to do a certain amount of Customer Analysis, but what they mostly do is session (Visit) and Visitor (Unique) Analysis. Not quite the same.

      For customer analytics you will likely end up using your offline systems (because in pretty much all web analytics tools you can't store PII info, or deep purchase behavior or multi-channel data etc). Corporate data warehouses, business intelligence tools etc. You get beyond web analytics (and it is pretty fun, done right very valuable).

      Visitor Analytics, loosely, is analyzing the behavior of people where you mostly have non-PII data and most analysis of people is using persistent cookies (what we call Unique Visitor analysis).

      Google Analytics does do pretty deep Visitor Analytics (just like Omniture and WebTrends and IBM etc). You can't do real customer analytics (as defined above) with GA, and indeed with other vendor tools as well. But some vendors (not GA) do sell you an additional Data Warehousing product where you can do more customer analytics (if you capture customer id and bring in multi-channel behavior data). So perhaps you can use them if you are interested in customer analytics.

      One thing of great value you can do in GA is look at the Frequency and Recency reports in the Behavior section of the Visitors reports. This is pretty cool and if you apply segmentation it becomes more valuable.

      You are right that some additional interesting things can be done in the quest for visitor analytics if you use Custom Variables (set scope at Visitor level). Please reach out to a GACP (if you are using GA) who can help you. http://www.google.com/analytics/partners.html


  13. 17

    Hi Avinash,

    We utilize a SiteCatalyst v15 global suite to analyze numerous subsets of pages or microsites. There is a global s_vi cookie and a microsite cookie where applicable. Given that all data is combined it seems to be a challenge determining the number of visits to purchase as the visit counts are provided by the global cookie and not the microsite cookie. Note: We also have a custom evar and prop that captures "New" vs "Repeat" as a value on each page view.

    I have configured a Page Hit segment of the microsite to isolate activity for these pages only.

    Microsite ToyMarket (HIT)
    Hit – MicroSite Property (evar##) equals ToyMarket

    I then utilize the the Visit Number Report found under Visitor Retention. This above approach seems to provide the results I seek but am not certain of the accuracy as the microsite cookie is not used to capture visit counts in a global suite.



  14. 18

    Hi Avinsh

    The article is great! I have a question, my trend for the last 2 months is showing people are taking 28+ to convert.

    This is really high for May & June – I wanted to find out why and needed some tips – can anyone help?

    • 19

      Becky: There could be any number of reasons for this to happen. The best option for complex GA requests is to hire a GAAC to go through the requirements and validate and recommend the right path. You'll find a list here: http://www.bit.ly/gaac

      You will find that they are quite affordable.


  15. 20
    Sravan Vadigepalli says

    Great post. I just see a quick correction on how you calculate Days to Purchase or Visits to Purchase. You said to take purchase user id's for a specific month and look back for their first visit – this approach might yield a bit bias to the results.

    Let's say I pull the user id's who purchased for Month of July and I find their first visit as sometime in January, this gives me about 6 months for that user to convert. What misses here is, what if the user id made a purchase in let's say April – Now we just have 4 months for that user to convert.

    So, the point I'm trying to make is – We should consider the overall time frame to correctly recognize the days to purchase.

    Define a time frame – let's say going back to six months

    Step1: Get the first visit of the USER ID or visitor id or cookie
    Step2: Get their purchase date – it could be same as first visit or later that visit
    Step3: Compute the difference between first visit to purchase visit

    • 21

      Sravan: Thank you for the three steps, worthy analysis.

      Consider also that this type of analysis less in terms of an individual human, and more in terms of looking at micro-segments (groups of people who share a common attribute).

      I say that because what you are looking for are patterns of behaviour, that is something you can action.

      The other thought to consider… We are looking for rolling patterns. Hence it is less that we are giving person s, y amount of time. Then you repeat the analysis over time and some of the things you are concerned about will get washed out.



  1. […] Original post by Avinash Kaushik and software by Elliott Back […]

  2. […] Quick comment on Avinash’s blog on time-to-purchase analysis. […]

  3. […] Consider understanding of these beauties: Days To Purchase and Visits To Purchase (More here: Excellent Analytics Tip#6: Measure Days & Visits to Purchase)….. […]

  4. […]

    本文是Avinash在21 Aug 2006所做的一篇文章。原文请见这里。下面是译文:

      已经有很多很好的度量来帮助我们理解顾客在网站上的行为,比如转化率,Page views / visitor,在网站上的平均停留时间,到购买页面前所浏览的平均页面数等等。这些度量也都可以根据你的需要进行进一步细分,但是有时候他们还是不能满足我们的需要。

      对于本文要讨论的这两个度量,并没有直接集成在网络分析工具中,但是因为它们能够很好的揭示一些客户行为的深层次诱因,尤其是提供关于最终购买的诱因,因此我还是非常喜欢它们的。这两个度量是:“购买前的天数”(Days to Purchase)和“购买前的访问数”(Visits to Purchase)。即使你没有度过我这个文章,我敢说你此前肯定在哪儿也见过这两个度量。


  5. […]
    最佳网站分析实践攻略 之 衡量购买前的天数和访问数

    文章来源Sidney Song 本文是Avinash在21 Aug 2006所做的一篇文章。原文请见这里。下面是译文:

  6. […]
    优化那些被“中断”的过程。如果你的网站平台能够做到这一点,将是非常cool的。如果你知道顾客的脱离点(point of “bailing”),例如在第三次访问后很多顾客没有在网站继续下去,那么你可以在他们第四次访问的时候给他们点儿甜头,或是基于你已经知道的信息,给他们一些更相关的商品(这是你最后的机会了),或者问他们要一个email地址为未来的联系和机会。
      好了,就写到这里了。你怎么认为呢?是不是有点儿意思?你已经有一些相关经验了吗?或者你不同意我上面说的。请给我回复吧!谢谢![Like this post? For more posts like this please click here.]

    本/Avinash from 这里 译者/Sidney Song

  7. […] Considera la possibilità di comprendere queste meraviglie: giorni necessari per l’acquisto e visite necessarie per l’acquisto (per maggiori dettagli vedi qui: Excellent Analytics Tip#6: Measure Days & Visits to Purchase). […]

  8. […]
    Google Analytics’ Avinash Kaushik explains how you can and why you should measure days to purchase and visits to purchase in your Web analytics tool. (Too bad Google Analytics’ Benchmarks feature, which if you opt in can give you benchmarks for sites in your category/industry doesn’t track those metrics though it will show you benchmarks for visits, bounce rates, page views, average time on site, page views per visit and percent new visits). Santa Avinash, benchmarked days and visits to purchase are on our Christmas 2010 Google Analytics wish list.

  9. […] określane trzyliterowymi skrótami. Lista obejmuje takie skróty jak B2B, CMS, CRM, CSS, DTP, FAQ, RSS, SEO, SSL, W3C i wiele wiele innych. Zapraszam do źródła […]

  10. […] occur on the third visitThe average conversion rate for these sites was 1.9%Further reading:https://www.kaushik.net/avinash/e…This answer .Please specify the necessary improvements. Edit Link Text Show answer summary […]

  11. […]
    As our friend Avinash points out, it’s absolutely critical that you measure days and visits to purchase. Look at the numbers at the top of this post again: 19 hours on average, and over 3 days for a full fifth of website visitors. If you aren’t measuring how long it takes to convert, you can make drastically incorrect assumptions about your abandonment rate.

  12. […]
    Take a look at the Frequency and Recency report in Analytics to get an idea of what kind of cycle your visitors follow. For advanced “days to purchase” and “visits to purchase” analysis, follow Google evangelist Avinash Kaushik’s method. This data will give you a glimpse into how useful remarketing tactics can be for your business in order to capture visitors who have demonstrated interest but haven’t yet converted. The key to successful remarketing is in determining why your visitors left and how you could bring them back.

  13. […] before they make the decision to purchase or opt-in. It is very important that you learn how to measure the conversion rates for your […]

  14. […] que se le hace una propuesta al cliente hasta que compra puede ser de un día. Típicamente, el Time-to-Purchase en la venta en B2B puede irse a los 6 meses. Y esto lo que implica es crecer mucho más lentamente, […]

  15. […]
    Your buyers are already distracted with an overwhelming amount of information on the internet. On top of that their attention is already divided among multiple devices and channels. That’s one of the reasons why 95% of first-time visitors don’t convert. 46% of them need 3 or more visits to purchase.

  16. […]
    For example, if a person has viewed your bamboo toothbrushes but hasn’t purchased, use remarketing to promote a listicle on your site about maintaining excellent dental hygiene. If people engage with the post, do remarketing to promote your product, or to an additional post about a related topic. The more times a person interacts with your brand, the more likely they will be to convert when you go for the hard sell.

  17. […]
    The use of these ads can also help make sure that as people move through the funnel, your messaging to them changes to keep encouraging them toward the buying stage. Remember that the more times a person interacts with your brand, the greater the chance they will convert when you go for the hard sell.

  18. […]
    The use of these ads can also help make sure that as people move through the funnel, your messaging to them changes to keep encouraging them toward the buying stage. Remember that the more times a person interacts with your brand, the greater the chance they will convert when you go for the hard sell.

  19. […]
    Tentar direcionar conteúdo diferente para clientes diferentes é muito mais fácil com o Facebook Ads. Usar esse tipo de anúncio também pode garantir que, conforme as pessoas vão avançando no funil, sua mensagem para elas mude para continuar empurrando-as para a fase da compra. Lembre-se que quanto mais vezes alguém interage com a sua marca, maior a chance de elas converterem quando você tentar vender para valer.

  20. […]
    Usar esse tipo de anúncio também pode garantir que, conforme as pessoas vão avançando no funil, sua mensagem para elas mude para continuar empurrando-as para a fase da compra. Lembre-se que quanto mais vezes alguém interage com a sua marca, maior a chance de elas converterem quando você tentar vender para valer.

  21. […]
    O uso destes anúncios can also help make sure that, as pessoas se movem através de the funnel, sua messaging to them changes to keep encorajadores eles ” toward the buying a realizar. Lembre-se que em the more times, na primeira pessoa interacts com a sua marca, the greater the chance “they will” converter ” when you go for the hard sell.

  22. […]
    Du kan også benytte plattformer som Instagram igjennom Facebook Business manager. LinkedIn kan også benyttes dersom du selger til bediftsmarkedet. Google Ads kan du benytte for å nå kunder som søker etter et speseifkt produkt. Nøkkelen her er å huske at jo høyere interaksjonen det er mellom publikum og merkevare, desto høyere vil sjansene for konvertering finner sted.

Add your Perspective