I can’t quite believe the growth in visitors to this site. Since I posted about my visitor count passing the quarter of a million mark on June 1st, I have had another 50,000 visitors taking the total count to well over 300,000! That’s 25,000 visitors a month. For little old me, I find that quite impressive. I’ve also had over half a million page views in that time. The page views counter passed three and a half million a while ago.
I know that being one of the feeds to the WordPress dashboard helps, but the vast majority of my visitors still come from search engines. Eleven of my top fifteen referrers are search engines. Of those, Google accounts for a whopping 76% of search engine hits. In fact, as I write this, the last 15 minutes has seen 15 unique visitors 12 of whom are visiting old pages via search engines.
With all this visitor activity, it certainly seems that my page caching is holding out ok. I still get some weird slow-downs on the server, but I think some of that is down to the statistics package I use, Power Pphlogger is starting to creak at the seams. I doesn’t appear that version 3 is going to appear any time soon, so I’m starting to look elsewhere.
Short link to this post: https://z1.tl/7v
I prefer to use ShortStat, but with 25,000 visitor per month, you will have to run the _killprevious.php script each month to clear out the stats from the previous month. Otherwise, the database will become far too large and far too slow.
You can find the current version of ShortStat here: http://www.shauninman.com/plete/2005/01/nofollow-the-leader
Unfortunately, I really need the older stats to track overall totals and longer term trends. My current system is storing around 70MB of data!
Ah, you’re looking for a long-term solution. Have you tried AWStats? My AWStats only regenerates every 24 hours, so I keep ShortStat around as a live stats solution, but I use AWStats for my long-term statistics.
Use AWStats as I suggested before. It takes about 10 minutes a day to generate details stats for ~1200 daily visits.
I use PPhlogger also (ver 2.2.4) and have no problems with it. It’s currently holding 122Mb of data and while it’s a little slow it still does the job.
I also have AWStats, it’s default with my host. I rarely use it but it looks ok.
I have also used AXS:
It’s a very good script but you’d need to clear out your records frequently.
You might want to use WP-stattraq. Its a really nice tool which does not count the crawler/bot hits which Shortstat seems to include in the display.
It’s available at
Unfortunately, I also need to record more than just my blog pages, so a WP only stat package won’t do.
Thanks for all the suggestions folks, I’m looking into a few different packages at the moment.
A typical virtual account with realtime PHP stats should be able to manage 50k visitors/day without a problem–if you are having difficulty with 25k/month, some sloppy spaghetti code could be the culprit, either that or MySQL is slowing you down–I personally prefer flat files, as does WebSideStory.
thanks for your comments. I think you are right that pphlogger should be able to cope. I remember Matt dropped Power Pphlogger last year for performance reasons, but I don’t imagine my traffic is anything like Matt’s!
I know that my server is not optimized in any way. I should look at that too.
Sorry I’m not too familiar with this script–but I looked at the feature list… Here are some things that could be slowing it down:
“traceroutes by above.net” This could be slowing it down–traceroutes can take some time. You can probably do the traceroutes from your own server to speed things up, but traceroute info isn’t very useful anyway–maybe turn it off.
Maybe shorten this timeout if it’s more than 1 day by default. “stores IP-adress+cookie to avoid multiple hits by the same user (you can set a timeout)” If this script runs in realtime, it could be wasting a lot of time scanning a big log file each time a new hit comes in. If you’re setting a cookie, why use a timeout at all? If the surfer has your cookie already then don’t count the hit as unique–simple–increment your raw count instead.
“visitor-path” As with the previous feature, this code could be wasting a lot of time scanning the entire database over and over and over again matching IP’s… I’m not sure if this runs in realtime or what, but off the top of my head–you could just keep the hit list sorted in a flat file, then as new hits come in, just go down the list in order… if there’s a cookie already, then search for a match, then drop it in. In this manner, all the repeat visits will usually be right at the top of the list, saving a ton of search time… and you would know ahead of time if this was a repeat visit because you can test for the cookie before doing anything, and if there’s no cookie yet, set the cookie then add this hit to the top of your list in case they click something else… in summary, keeping your hit lists sorted saves your script from having to do much searching at all. I would imagine this is a lot faster than using mysql.
The analysis, collating statistics, putting together page history/visitor path, etc. is done after the fact when you view the various reports.
well i thought I would comment as I found your site through google and now have been reading, and let me say its been very entertaining, its like finding a needle in a haystack, finding a great readable blog!!!
thanks for making my night
hi and have a great day from Australia
Wow, you’re actually the Technorati #1 blog (although their link pointed to zed1.com/ and I had to do some digging to get here). Congratulations!
I havent been blogging very long, but I was running a web page from my home pc for a while, so I used to pay close attention just to the server logs, then added Nedstats, and then sitemeter, both free, but both add some more load time.
Online stats services like the paid Sitemeter are good and fairly fast. Watch out for awstats which had some serious security holes (recently). My server was compromised through this stats package.