March Madness: Preceden Gets Some Love, jMockups’s Grind Continues

In keeping up with my monthly progress reports, here’s an overview of what went down in March. (See also: January, February)


One of my goals in March was to spend more time working on Preceden. I normally devote most of my free time to jMockups, but am trying to improve how I balance the two, given that Preceden actually turns a profit. I spent about 15% of my 120 hours online working on Preceden during March (up from about 5%), which is a big step in the right direction.

Preceden had 16,845 visitors during March (including embedded timelines) that generated 78,925 pageviews. There were 35 upgrades to the pro account, which generated $895 in revenue (up from $522 in January and $580 in February). However, I spent $540 in order acquiring 11 of those customers while experimenting with Google AdWords. After subtracting the hosting fees and AdWords expenses, I wound up with a profit of about $285.

While I’m disappointed that AdWords did not yield a positive ROI, I’m glad I took the time to do it. I’ve had it in my head that AdWords would be an easy road to four figure profits and as long as I believed that, I wasn’t terribly motivated to work on it (sounds stupid, I know). With the knowledge that it won’t be as easy as I once believed, I’m forced to get back into the game.


While I continue to make a lot of good progress with jMockups, traction remains elusive. The trough of sorrow is aptly named. :)

jMockups had 9,914 visitors during March that generated 19,922 pageviews. 6,812 of those visitors were a result of posting about the launch of the new specifications tool on HackerNews.

Paid signups skyrocketed from 1 to 2 during March, yielding $38 in revenue. Subtract about $200 in monthly expenses, and I’m still out a bit each month.

On a much more positive note, I received an acquisition offer for jMockups towards the end of the month. The company a good fit, but I think I’ve barely scratched the surface of what’s possible with jMockups and it would therefore be a huge mistake to sell right now, regardless of the price. Plus, if I were to sell it, I’d start building something new almost immediately, so what would be the point of moving on as long as I’m still passionate about it?

Blog Posts

On the jMockups Blog:

The New jMockups Mockup Editor (Mar 4)

Improving the Website to Mockup Converter (Mar 8)

Share Your Website Design to Help Others Get Started with Theirs (Mar 11)

jMockups Introduces Mockup Templates to Make Web Design Easier (Mar 12)

jMockups Can Now Automatically Create Detailed Specs of Your website Mockups (Mar 20)

The Customers Have Spoken: We Want to Export Our Mockups to HTML/CSS (Mar 21)

Baby Steps Towards Mockup to HTML (Mar 28)

New Default Design for jMockups Image Elements (Mar 29)

Ajaxified Mockup Deletion (Mar 30)

On this blog:

February in Review: Life Tracking, Major jMockups Updates, and Preceden’s Best Month Yet (Mar 4)

How to Calculate Your AdWords ROI for a Freemium, One Time Purchase Web App (Mar 5)

AdWords: Week 1 Results (Mar 13)

A/B Testing Preceden’s Homepage – Round 1: 37% Improvement (Mar 13)

Preceden’s 15 Days @ $30/day AdWords Results (Mar 29)

The signal-to-noise ratio on some of these is a lower than I’d like, but these hey-here’s-what-I’m-doing posts are usually pretty quick to write and at least they get something out there (a strategy I’d recommend to anyone who wants to blog but doesn’t know what to write about).

Also, in an effort to get more involved in the local startup scene, I’ve started attending the monthly Lean Startup Circle Boston and Boston BizSpark meetups. If you attend either, drop me a note so we can hook up at the meeting.


Preceden’s 15 Days @ $30/Day AdWords Results

About two weeks ago I posted the results of one week of $10/day AdWords advertising for my web app, Preceden.

In a nutshell, I spent $72.16 and made $87, for a profit of $14.84, which works out to be a 21% ROI.

With the positive results, I upped my daily advertising limit up to $30 and let it ride.


Over the 15 days the campaign ran, I spent $453.07 which resulted in 3,186 visitors to the site.

Out of those 3,186 visitors, 415 signed up for an account (about 13%). Out of those 415 who signed up for an account, 8 upgraded to Preceden Pro (1.9%) for $29 resulting in $232 in revenue. Overall conversion rate was 0.25%.

$232/$453.07 – 1 = -49% ROI


What happened?

Google Analytics tells me that the AdWords visitors were 80% more likely to sign up for an account and 60% more likely to upgrade. This makes intuitive sense because visitors who found the site via AdWords were looking specifically for a timeline tool. The overall site average is a lot lower because it also includes folks viewing embedded timelines, for example, who aren’t specifically searching for a timeline tool.

The difference is… visitors from AdWords cost money. About 13 cents on average. Despite their higher conversion rates at each step, not enough are upgrading for it to be profitable.  In order to break even, I would have had to have a 3.6% upgrade rate, which is almost twice what it was.

I saw a presentation earlier this week by David Skok, a VC at Matrix Partners, at the monthly Lean Startup Circle Boston Meetup in Cambridge. In it, he emphasized the importance of measuring your Customer Acquisition Cost (CAC) with respect to the the average customer’s Lifetime Value (LTV).

In Preceden’s AdWords case, the CAC is $453.07/8 = $56.63 and the LTV is $29. A poor ratio indeed.

Moving Forward

The good news is that for the last seven months, Preceden has grown organically without any outbound marketing efforts and has something like a 90% profit margin after taking into consideration the server costs.

Rather than throw more money at AdWords, I’m going to take that money and invest it in article writers via oDesk. Consider this: for $3-$4/hour, you can hire someone to write articles or blog posts. For the sake of simplicity, say it costs on average $10 for a single article. For the same $453, I could have had 45 fairly decent articles on the site about how to make specific types of timelines with Preceden (Civil War, World History, the War in Iraq, etc etc).

How many additional visitors would find those 45 articles via organic search? And how many of them will upgrade? I don’t know. But it will be interesting to find out.

A/B Testing Preceden’s Homepage – Round 1: 37% Improvement

Preceden’s homepage can currently be divided into four sections (see below):

1) The splash screen (Make an amazing timeline with Preceden, Quote, Sign Up)

2) Example

3) Features

4) Featured On

I’ve been running an A/B test to determine the impact of the splash screen design and the features.

Here are the results along with their corresponding conversions rates. The conversion rates reflect the % of people that make it to the sign up page. (In future tests I’m going to measure the % that actually sign up, which is probably a better indication of a successful conversion.)

Note that I’m stopping this A/B test before Google Website Optimizer has reported a statistically significant result, but I’m eager to try additional variations and don’t want to wait any longer. So take these results with a grain of salt.


Conversion rate: 17.2%

Combination 1: New splash screen

Conversion rate: 19.2% (11.4% improvement)

Combination 2: Original splash screen, no features

Conversion rate: 23.7% (37.3% improvement)

Combination 3: New splash screen, no features

Conversion rate: 18.3% (5.95% improvement)


Page Sections


The results were 180 degrees from what I expected. I’d have bet money that:

a) The sexier splash screen and call to action had a higher conversion rate. In fact, it decreased the conversion rate by 8.3%.

b) The shiny list of features would have had a higher conversion rate. In fact, not including the features increased the conversion rate by 15.1%.

The best result was with the original splash screen and without the list of features, which yielded a 37% higher conversion rate. Why? My theory is that in both cases, the landing page was simpler and people generally prefer simpler over more complex. Makes you appreciate why everything Google designs is dead-simple.

More to follow…

AdWords: Week 1 Results

Last Sunday I started advertising Preceden via Google AdWords. I’ve played around with it before, but never seriously.

I wrote a few ads, picked a bunch of timeline-maker keywords to target, set my daily budget to $3 (and a day or two later $10) and flipped the switch.

Week 1 Results

Impressions: 18,439

Clicks: 564 (3.06%)

Visitors: 548

CPC: $0.13

Cost = $72.16

Sign Ups: 3

Revenue: $87

Profit: $14.84 (21% ROI)


The variance of this whole process is extremely high. 3/548 is a 0.54% conversion rate. Good, bad… I don’t know. It seems bad, but I don’t really have a lot to compare it to.

The good news is that the campaign made money. Not much, but something. Had 2 people upgraded instead of 3, it would have lost money (-20% ROI). Had one additional person signed up, the return would be exceptional (61% ROI). This whole thing makes you appreciate how small improvements to your site, which in turn might convince a few more people to upgrade, can make a huge difference to your bottom line.

Next steps: Refine A/B tests, bump daily budget to $30, and see what happens.

Here are the keyword details:

How to Calculate Your AdWords ROI for a Freemium, One Time Purchase Web App

I run a web-based timeline tool called Preceden and am about to start experimenting with AdWords to bring in traffic. What kind of ROI can I expect given my current conversion rates and price?


s = Conversion rate representing how many new visitors sign up for a free account

u = Conversion rate representing how many free account holders upgrade to a paid account

p = The price of the web app

c = The average Cost Per Click (CPC) for our AdWords campaign

For example, let’s say our CPC is $0.25, 25% of the new visitors sign up for an account, 4% upgrade to a paid account, and upgrading costs $29 (which is roughly my situation with Preceden, give or take).

First, we’ll calculate the Expected Value for a single user. If 25% of the visitors sign up for a free account, and 4% upgrade to a paid account, the overall conversion rate is 1%. So 1% of the time a visitor signs up and upgrades to a paid account and we make $29 minus the cost of AdWords ($0.25). The other 99% of the time the user doesn’t sign up or doesn’t upgrade their account and we lose the $0.25.  The Expected Value then is 1% * $28.75 + 99% * -$0.25 = $0.04. In other words, we can expect to make about 4 cents per AdWords visitor.

Our ROI is the Expected Value ($0.04) divided by the cost ($0.25) or 16%.

If these numbers are correct, then if we spend $100 on AdWords, we can expect to make $116. If we spend $1,000 we can expect to make $1160. And so on.

The last line simplifies it all a bit. The implications make intuitive sense: if we increase the conversion rates or the price, we can expect to make more money. If we decrease the CPC, we also make more money. Likewise, if we want to double our ROI we can either double the price ($29 to $58), half the CPC ($0.25 to $0.125), or double the conversion rate (1% to 2%). Which of the three do you think is the easiest to do?


Over the next few months I’m going to work on measuring and optimizing Preceden’s ROI with eye towards maximizing its profits. I’ll provide regular updates — stay tuned.

February in Review: Life Tracking, Major jMockups Updates, and Preceden’s Best Month Yet

In December I announced a $4K/month challenge, where I try to reach $4K/month in profit from my web apps by the end of 2011.

In this post I’ll give an overview of what happened in February. Click here to see January’s report.

By the numbers:

1) According to RescueTime, I spent 121 hours working over the course of the month, which equals about 30 hours/week or 4.3 hours/day. (Not including day job.)

2) 10,578 people visited Preceden. 529 people signed up for an account. 20 people upgraded to a paid account. Revenue: $580. Total time spent working on Preceden: 0 hours.

3) 5,303 people visited jMockups. 302 people signed up for an account. None upgraded. Revenue: $19.

4) 9 blog posts:

Three on this blog:

jMockups and Preceden January Review – 5 Feb

Seeking Alpha Testers for jMockups Import Tool (cross post from the jMockups Blog) – 6 Feb

Launch! jMockups Website to Mockup Converter – 19 Feb

Five on the jMockups Blog:

New Keyboard Shortcuts to Make Designing Mockups Easier – 3 Feb

Seeking Alpha Testers for new jMockups Import Tool – 6 Feb

New Homepage Design, Some A/B Testing, and Why Data Can Be Misleading – 11 Feb

Website to Mockup Converter Launched – 19 Feb

Reengineering jMockups for Optimal Performance – 26 Feb

And one as a guest post on Sebastian Marshall’s blog:

Nine Tips for Getting Started with Life Tracking


In terms of progress, February was a huge month for jMockups. For a good chunk of December, January, and early February, I was busily building and preparing for the launch of the Website to Mockup converter. The official launch was on Saturday, 19 Feb while I was in NYC with Chris Conley and Mike Nicholaides. All in all, it went fairly smoothly, though there were some issues rooted in the slowness of the jMockups editor. The week following the launch I reengineered the editor to eliminate the performance issues. Today was another huge update: the launch of the redesigned mockup editor. In a nutshell, compared to a month ago jMockups has a sexier design, an improved user interface, vastly improved performance, and one major new feature: the Website to Mockup converter.

Meanwhile, Preceden had its best month yet. 20 paid signups resulting in almost $600 in revenue. Long term I believe that jMockups has much more potential than Preceden, yet it’s a little unnerving that the thing I’m spending so much time on is hardly making any money and the thing I’ve ignored for the last seven months is growing and bringing in decent revenue. Rather than spend 100% of my time on jMockups and none on Preceden, I’m going to aim for a 85/15 ratio in the future. I keep saying it, but a few A/B tests, SEO, and target AdWords campaigns could have a huge affect on Preceden’s revenue so it’s time to start doing something about it.

Finally, I’ve been doing life tracking for 2+ months now and have had some great results from it. Tracking + slow, incremental improvements go a long, long way. Check out my post on Sebastian’s blog for more details.

One last thing: I really enjoy talking with folks about their startups and poker bot work, so if there’s anything I can help you with or you just want to say hey, please shoot me an email.

Thanks for reading — Matt

jMockups and Preceden January Review

As promised in my 2010, 2011, and a $4K/month challenge post, I’m going to do a quick recap each month of the progress I’ve made with towards achieving that end.

Here’s what happened in January.


Total Sign Ups: 510

Upgrades to Preceden Pro: 18 (3.5%)

Revenue: $522

Progress: I spent a total of about 5 hours working on Preceden in January, which was split between reverting December’s pricing plan changes and with integrating Mixpanel last week to start getting better insights into how people are using the tool. To date I haven’t spent any time trying to optimize the conversion funnel, which gives me high hopes that I can at least double it with some calculating A/B tests.


Total Sign Ups: 135

Upgrades to jMockups Pro: 0

Revenue: $19

Progress: I spent a lot of time working on jMockups in January, with a focus on improving the user experience, fixing bugs, and making progress towards launching the new website import tool later this month.

Most of the major changes were covered on the jMockups Blog:

In early January I began working with a talented San Fransisco-based JavaScript developer on jMockups with the intent of eventually bringing him on as a co-founder if the partnership went well. We got along extremely well and I was thrilled with how quickly he was picking up the code, but personal circumstances prevented him from continuing. So back to one.

jMockups is somewhere in the trough of sorrow right now:

And there’s even been several crashes of ineptitude thanks to some poor QA practices…. so I’m on my way :)

My primary goal in February is to launch the new website import tool, which will let you import any existing website into jMockups, allowing you to redesign and share it in seconds.

Before I launch it (and it’s 95% ready), I want to fix a few bugs, improve a few existing features, and set up some more in depth analytics to prepare for the potential influx of visitors after I launch it. There’s nothing worse than launching an amazing new feature only to have 50% of the new visitors run into a bug that sends them away with a poor taste in their mouth…. except for never launching it at all, I suppose.

According to RescueTime, I spent 120 hours working in January, or about 27 hours/week.


January was kind unique month for me because of how much time I spent on the road for my day job: 11 days completely away from home and another 6 partially away. 27 hours/week is a bit high for me — average is about 20 to 25. The extra hours were only possible because I was traveling and did not have anything else to split my time with.

On New Years Day I began doing daily life tracking, which was inspired by several posts Sebastian Marshall has written on the topic. I’ve been tracking how much I eat out, how much I exercise, how much I spend, my finances, sleep schedule, etc. This deserves its own post, so I’ll save the details for later, but in a nutshell it’s given me some astounding insights into my life (positive and negative) and by making a few minor changes I’ve already had incredible gains from it. I highly encourage you to try it out if you’re looking to improve some aspects of your life (start with Sebastian’s posts).

With that, back to coding.