Powered by Google App Engine

“Popular Posts” widget for static websites

Powered by Google Analytics.

What's popular on your site?

Use your existing (or new) Google Analytics account to generate a live list of popular posts for your website or blog.

Support for Jekyll, Blogger, Wordpress, Tumblr, & more.


Yearly access for a medium-sized site, at a small price!

  • Powered by Google Analytics
  • Daily updates
  • Best for medium-sized sites (~30,000 visits/month)
  • Transferrable between domains
  • Don't worry about serving/maintaining your own script!

Instant activation, two-week “money back” guarantee.


★  Drive more traffic!

… Don't let people leave after reading just a single post. Let them read more!

★  Great for 404 pages.

Page not found? Bad link? … Decrease bounce-rate! Show these users what they could be looking at, instead.

★  Showcase older + newer content simultaneously!

Older posts get traffic from search, where as newer posts get hits from your homepageSuggest both to both types of visitors, without having to manage what links are being displayed.

… Money-back guarantee.

Can't get it working? Not what you wanted? — Don't worry, just email me within two weeks.

Integration examples

The code below shows my token generating a list of popular pages for my website

<script type="text/javascript" src="//benguild-popularposts.appspot.com/embed.js?token=5061739217420288&rows=5"></script>

Which generates:

… and, this can be styled using standard CSS:

#popularposts ol {
	list-style-position: inside;
	font-weight: bold;

#popularposts ol li a {
	font-weight: normal;
	text-decoration: none;
	color: red;

There are some optional configuration variables that can be added to the <script>'s URL:

- prefix = # of characters to strip from the beginning of each page title
- suffix = # of characters to strip from the end of each page title

- href_target = Manually set the "target" of each link. (ie. _blank, _self, _top)
- href_domain = Prepend this domain to each listed link. (ie. benguild.com)

- rows = The number of rows to display. Defaults to 10 if unset.
- counts = 0 or 1, display the ‘Page View’ count for each row, if enabled globally.

If there is a configuration error, it will be returned like so:

<div id="popularposts" class="error">Invalid token</div>

Typical output with valid configuration and counts enabled looks like this:

<div id="popularposts"><ol>
  <li><a href="link"><strong class="count">1,234</strong> title</li>
  <li><a href="link"><strong class="count">1,234</strong> title</li>

…That's all there is to it!

Setup Google Analytics to email reports with your token

Once your token for this is active, we'll give you a unique “subject line” to use for a Google Custom Reports emails. Send us an email up to once daily. We'll handle the rest!

Keep in mind that emailing more often than once daily won't update your listing more often, so please don't bother, OK? ;)

Steps to configure:

  1. Create a Google Analytics profile for your website. If you haven't configured Google Analytics yet, visit their website and integrate it onto your blog or website. It's free and easy!
  2. Create a “custom report” of the most popular pages on your site this month based on one of these templates I've created for your blogging platform:

    If you're creating your own report from scratch: The report should only contain two “dimensions” in a “flat order” display type, in this exact column order: Page and Page Title. Only one metric should be included: Unique Pageviews. Additional data or incorrect ordering of these columns will cause the received reports to be discarded. — See the above example templates for demonstrations of working configurations.

  3. If the report correctly displays the most popular posts on your site, configure it to email us the report automatically using the “Email” option in the toolbar at the top. Use the following settings:
    Tip: To set the maximum number (typically 10) of pages visible by any widget, change the number of shown rows on the custom report by adjusting the “Show Rows” option at the bottom of the table before setting it to be emailed automatically. Note that the maximum accepted is 1000 rows per-file.
    • To: reports@benguild-popularposts.appspotmail.com
    • Subject: (Activate a subscription first to get a custom subject-line token)
    • Attachments: CSV
    • Frequency: Weekly (with today as the day)
      … If you are a monthly “Pro” subscriber, choose ‘Daily’. — Regular subscribers' reports are ignored if sent more often than ‘Weekly’.
    • Under Advanced Options, choose “Active for 12 months”. We'll remind you automatically in 11 months to extend this.
    • Finally: Once finished, open the report again and email it ‘Once’ with the same settings to seed the initial data for this week.

Configuring a Google Analytics custom report to be emailed to this service automatically every week for JavaScript embedding


Do you support every blogging service?

Basically. As long as your blog or website has a consistent page structure (ie. something that follows a pattern that can be confined to a specific report on Google Analytics), you'll be fine.

Why should I pay?

Because it's cheap and easy! I maintain this script and cover the costs to run it. If everyone used it for free, it'd be expensive to run and I'd have to pay for it myself. :)

Is this fast + reliable?

Yes. It's hosted and run on Google App Engine, which is essentially what powers Google's web infrastructure.

May I sign up for multiple subscriptions?

Yes. Even for the same domain for different reports or queries within Google Analytics. This service will make an embeddable JavaScript list from any report as long as it consists of URLs.

Will I get shut off if I go over 30,000 visitors per month?

No, it's a rolling average. If you exceed this on a regular basis, you may be asked to upgrade to a larger plan.

Can I move my subscription to another site or URL?

Yes, the system doesn't care what site the data is for. Just submit us a report from whichever Google Analytics profile you'd like and it will be processed and updated up to once daily. — You can also send it less often if you prefer.

Will this service be around in 5+ years?

Of course. Why not? I use it on my site, and it runs on Google App Engine. Unless Google changes their rules or system to make it not work, I'll continue to maintain and support it.