In 2009 I first described here on LessWrong a tool that Bethany Soule and I made to force ourselves to do things that otherwise fell victim to akrasia ("How a pathological procrastinator can lose weight"). We got an outpouring of encouragement and enthusiasm from the LessWrong community, which helped inspire us to quit our day jobs and turn this into a real startup: Beeminder (the me-binder!).

We've added everyone who got on the waitlist with invite code LESSWRONG and we're getting close to public launch so I wanted to invite any other LessWrong folks to get a beta account first: (no wait this time!)

(UPDATE: Beeminder is open to the public.)

It's definitely not for everyone since a big part of it is commitment contracts. But if you like the concept of (forcing yourself to reach a goal via a monetary commitment contract) then we think you'll adore Beeminder.

StickK is just about the contracts -- Beeminder links it to your data. That has some big advantages:

1. You don't have to know what you're committing to when you commit, which sounds completely (oxy)moronic but what we mean is that you're committing to keeping your datapoints on a "yellow brick road" which you have control over as you go. You commit to something general like "work out more" or "lose weight" and then decide as you go what that means based on your data.

Someone outperforming their yellow brick road

2. You have the flexibility to change your contract in light of new information (like, 40 hours of actual focused work per week is damn hard!). That also sounds like it defeats the point of a commitment contract, but the key is that you can only make changes starting a week in the future. (Details at which describes the interface of the "road dial" for adjusting the steepness of your yellow brick road.) The point is that akrasia (dynamic inconsistency, hyperbolic discounting) means over-weighting immediate consequences, so to beat akrasia you only need to bind yourself for whatever the horizon on "immediate" is. Based on a study of grocery-buying habits -- when buying groceries online for delivery tomorrow people buy a lot more ice cream and a lot fewer vegetables than when they're ordering for delivery next week -- and raw guesswork (so far), we're taking that Akrasia Horizon to be one week.

So Beeminder as an anti-akrasia tool means committing to keeping all your datapoints on a yellow brick road that you specify and can change the steepness of at any time, with a one-week delay.

You may be wondering how anyone could ever fail to stay on a yellow brick road that's this flexible. Here's how: if you're highly akratic. Such a person may well find it a daily struggle to stay on the road. Yeah, you can always choose to wuss out and flatten the road, but only starting in a week, which you don't want to do. You want to wuss out Right Now, dammit! I mean, just for now, while you eat this pie, and then you'll behave again. No such luck though.

The daily struggle to stay on the road does not induce you to touch that road dial. You always want to make it easier "just for today" -- which the road dial doesn't allow -- and you always think you'll get your act together by next week.


We'd love to hear people's thoughts on this! Perhaps surprisingly, it took a ridiculous number of iterations to get to this point. For the longest time we struggled with different ways to deal with the fact that it's so often hard to decide what to commit to. We tried many variations of having multiple yellow brick roads for a single goal, so that you could specify an ambitious goal as well as a bare minimum. It was always too messy, or would backfire altogether and be paralyzing. We think the road dial with an akrasia horizon is a big leap forward. And it seems so obvious in retrospect!


New Comment
88 comments, sorted by Click to highlight new comments since: Today at 4:03 AM
Some comments are truncated due to high volume. (⌘F to expand all)Change truncation settings

I am looking forward to the API. I am much more likely to continually use Beeminder if it can be automatically updated or, failing that, updated easily from a mobile device. The site is actually OK (not great) to navigate with a phone, but typing updates is not that easy.

Thanks for the hard work. Beeminder looks like a great tool.

Yeah, I personally really love the graphs that I don't have to manually enter data for, like my weight (withings scale) or any time-based goal [] or pushups (sort of, thanks to an Android app that Bethany Soule wrote [1]). Thanks for the kind words, and be sure to upvote the API suggestion here: Oh, and note we have an SMS interface: (US only, unfortunately; via Twilio) [1] It counts pushups by touching your nose to your phone. You still have to enter on Beeminder but it's an odometer-style goal so no need to enter every day. It would actually be pretty easy to connect it to Beeminder so no data entry is needed at all, if there's demand for that...

This idea sounds awesome. Congrats for having made it happen!

(I don't think I'll be joining myself, preferring to deal with my akrasia issues in a different way, but it sounds like something that could be really useful for someone with a slightly different mindset or in a somewhat different situation.)

Thanks Kaj! I'm very interested to hear your tricks for dealing with akrasia. If you want to waste more time talking about not wasting time, you might like the Akratics Anonymous email list: (seriously though, very smart discussion there)
Mostly my current anti-akrasia tricks center around: * Eliminating distractions, which in a lot of the cases mainly means eliminating Internet access. * Trying to make myself feel happier. I notice that I have lot less akrasia if I'm feeling happy. Being happier doesn't always actually get me to do things, but often it does at least eliminate procrastination in the sense of doing something in order to avoid doing something else and feeling guilty about it all the time. I still don't do whatever I'm supposed to be doing, but I don't feel guilty about that, either. As a result, I can actually manage to relax and get the thing done later on when I'm more rested.

I just have to say thanks for a great tool for managing my akrasia!

It is too early to say that the effects will last long-term, but Beeminder has genuinely given me a boost towards doing the things I want-to-do-but-keep-putting-aside-just-for-the-moment in a way that nothing else has for a long time.

It has also made very clear which things I want to do but put off (on which activity is rapidly diverging from the yellow brick road in a positive direction) and the things I don't want to do but have to (which are still in the safe zone, but are not running away from the YBR at all...).

You're welcome! Glad you're finding it useful. Mind if we excerpt this high praise as a testimonial? Also that's really an interesting insight about the difference between Beeminding things you want to do vs things you know you should. I've noticed that too, for me reading falls under the former, and pretty much everything else under the latter. With reading it is like a matter of inertia -- once I start reading I'm happy to keep doing it, but it is hard to start. But losing weight I never want to do, I only ever want to have done it.
Leaving aside my low opinion of testimonials as evidence for choosing a product or service (I know they work and they are thus an effective marketing tool, but I don't trust them for reasons that should be obvious to LessWrongers), I think it is too early for me to unreservedly recommend Beeminder to the "public at large". My experience with it is still in a bit of a honeymoon period emotionally (I get excited about new things - don't we all!) so I want to be sure I am not just getting carried away. I recommend that you solicit my permission for a testimonial in a month or so. If I am still using Beeminder (as seems likely at this time) then I am sure I will be happy to oblige.
Love it. Alarm set for a month (or so). And, yes, testimonials are, well, cheap talk. But our testimonials aren't like that, baby, I swear it...
Hey Danny and Bethany - you forgot to ask me again about using my earlier praise as a testimonial! To cut short any suspense - you may use my previous statement. My perspective has now developed a little (I am not sure quite how I let music practice start to slip, given I get so much out of it), but I stand by everything I previously said. I have in fact recommended Beeminder to a few other people who I thought would "get it" and make good use of it. Two months now without running off the road on any of my counters - though getting to bed on time has been close to the wire lately...

I have been trying (off and on, without much focus) to figure out how to express "I want to spend less money on eating out for lunch, either by skipping it (bringing lunch from home or going home for lunch) or by spending less when I do" - anyone have any tips for how to wedge this into the system?

Great goal! I don't think any wedging is required: Pick the "Set a Limit" goal type and then just report how much you spent each day (maybe set the bot reminder to come after lunch at 1pm and reply to it with the amount). Set the initial rate to, say, $50/week and decrease it till it feels about right.
Got it. Thanks :)
Cool, looks great so far. [ (thanks for the permission to show that off!)] It's a nice example of building up a safety buffer by getting below (or whatever the good side is) the yellow brick road. Which, come to think of it, is the same thing that a plain old spending budget does. So this yellow brick road is just a spending budget with teeth. Once you add a commitment contract, that is. While I'm in massive self-promotion mode here, this reminds me of my suggestion of a "golden brick road" for deciding how much to spend vs save in general: (Perhaps a more general solution to what you're trying to solve with your lunch graph?)

I wonder what the connected red dots and the thin grey line are...

The thin line (supposed to be purple, not gray) is an exponentially weighted moving average. It's what's recommended in The Hacker's Diet [] as a way to keep from freaking out about the day-to-day fluctuations in your weight. As long as all your datapoints are below that line then you're inexorably trending downward. The "rose-colored dots" are an attempt at a more normal-person-friendly version of that. It's a transformation of your data to be as monotonic as possible such that the transformed datapoints (the rose-colored ones) are still within something like a standard deviation of the actual measured datapoint. There's also the blue-green aura around your datapoints which is a very thick polynomial regression on your data. All of these things are an attempt to show you your true trend. (Also, they only apply to goals like weight loss where the measurements are noisy.)
Thank you very much... One thing I don't like about John Walker's algorithm is that it gives too much weight to the very first data point, and to data before a ‘break’, so that if you only report your weight n times every N days (as I do, because I don't have a scale in the flat where I'm staying so I only weigh myself when I go back home on weekends -- I know that makes the whole thing a lot harder), the trend line will change about N/n times as slowly as it should. I prefer this algorithm: factor = 0.9 numerator = denominator = 0. every day: numerator = factor * numerator denominator = factor * denominator if user reports weight: numerator = numerator + today.weight denominator = denominator + 1. today.smoothed_weight = numerator / denominator (which is equivalent to Walker's algorithm if you report your weight every day and have done so for a while).
Nice, thanks! Is that by chance equivalent to what this page is suggesting:
It is equivalent to the answer by yairchu of Jun 21 '09 at 15:53, as far as I can tell.
I just had another idea (loosely inspired on the Glicko rating system): suppose that a person on Day 0 has an unknown “true weight” W_0, but because of measurement errors and unknown amount of body water etc. the scale reads w_0, which is normally distributed with mean W_0 and variance σ^2; suppose also that if we knew W_0 we would assign W_1 (the “true weight” on Day 1) a probability distribution with mean W_0 and variance c^2(t_1 − t_0). Now, if our probability distribution for W_n is a Gaussian with mean u_n and variance σ_n^2, on knowing the measured weight w_n we would update it to mean (u_n/σ_n^2 + w_n/σ^2)/(1/σ_n^2 + 1/σ^2) and variance 1//(1/σ_n^2 + 1/σ^2). Hence: sigma_sq = 1 c_sq = 0.01111111111111111111 smoothweight = 0 sigman_sq = infinity every day: sigman_sq = sigman_sq + c_sq if user reports weight: smoothweight = (smoothweight/sigman_sq + today.weight/sigma_sq)/(1./sigman_sq + 1./sigma_sq) sigman_sq = 1./(1./sigman_sq + 1./sigma_sq) (Multiplying sigma_sq and c_sq by the same constant doesn't affect the values of smoothweight, as far as I can tell.) In the limit of data on a large number of consecutive days, sigman_sq approaches 0.1 and the algorithm becomes equivalent to the other ones. I've tried this with my own gapped data and the trend line changes faster than with the Hacker's Diet algorithm but not as fast as with my old algorithm. But I now prefer this because it has a rationale resembling more a derivation from first principles than someone pulling stuff out of their ass. (Is there a way of getting real subscripts and superscripts?)
Also, σ^2 and c^2 could in principle be found empirically: in this model, the difference of measured weights t days apart is normally distributed with variance (2σ^2 + tc^2). I found a file with a couple years' worth of almost daily weight data of myself from a few years ago and computed the average of (w_n − w_(n − t))^2 for various values of t, and for not-too-large values that's actually approximately linear in t (except it is slightly lower at multiples of 7 days, which I take to be an effect of week cycles -- I tend to eat more on weekends). But the ratio between the c^2 and the σ^2 I found was nowhere near 1/90 -- it was actually about 1/5, which suggests that the Hacker's Diet smoothed average responds to changes in weight much more slowly than it should, even if the weight is reported daily. (Will anyone bother to find out the formula for the ideal Bayesian estimate of c^2 and σ^2 in this model, assuming uninformative priors?)

Clearing up more confusion about how to actually get a commitment contract started: You go off your road and then you have to commit in order to reset it, i.e. the first try is free. More info:

So many of you wanted to start commitment contracts immediately that we hurried and implemented that feature. What Bethany said is still true (first try is free), and the original fee schedule applies, but if you want to jump ahead in the fee schedule, now you can. We also added a 24-hour delay in actually charging your credit card if you go off the road, just in case we screwed anything up in our rush to add this feature. (We'd refund a spurious charge regardless, but then we'd have to eat a small fee, so better to catch it before that.) We've also been augmenting the FAQ -- -- based on, well, the frequently asked questions we've been getting. Keep them coming! Oh, and also, despite obvious rough edges still, we decided to officially launch:

Clearing up some confusion that has come up: (and holy crap, thanks so much for the flood of interest since this hit the frontpage!)

What if you just want a flat yellow brick road to force yourself to do, say, a minimum of 60 minutes of studying per day?

The answer is that that's not a flat yellow brick road, that's a yellow brick road that slopes up at the rate of 60 minutes per day. In other words, you'll have a graph with total cumulative number of minutes of studying on the y-axis and time on the x-axis.

Also, if you literally want to force yourself to d... (read more)

Can't you also have a 60 minute study, with no safety buffer, by using the "personal max" option on a flat road? Certainly seems like that'd work to me.
Good point! But with that kind of graph we assume (like with weight loss) that the measurements are noisy and we compute the width of the yellow brick road based on the variance in the data. So if you put in huge days occasionally then the road width could get too big and the road would lose its teeth. But mostly we just haven't tried doing it that way. If anyone wants to, we'll pay close attention to it and see if we can make it work.

Reading the site it seems like it's mostly aimed at weight loss, but I didn't see anywhere where it came out and said it directly. You could officially brand yourselves as a weight loss site. But it probably makes sense to just emphasize other goals more in your examples.

Looking just at the main page it wasn't at all clear what you do. I think your graphs are awesome, but it took me a lot of looking through your site to understand them. Some introductory text and images would help more than bring able to see all 20 graphs. Potentially a smaller number of well chosen, well named, larger graphs.

Really appreciate this feedback from everyone! Some incredibly valuable suggestions, including this one. Weight loss, yeah, we've gone through some identity crises, wondering if we should really focus on weight loss since it can be hard trying to be too general. So far we're sticking with generality, which seems like a good choice for the current influx from LessWrong, which are mostly Do More -- though plenty of weight loss goals too.

Thanks so much to everyone checking it out already! This would be a fine place to ask questions if anything is confusing about it or anything. Or if you want to rip the whole idea to shreds, by all means, bring it on! :)

When signing up, I was told the password I tried to use was too long (I have unique, randomly generated, passwords for each site I use). so I generated a < 20 chars password instead - however, password length limits around this size suggest that the site might be storing the passwords as plain text, rather than only storing a salted hash of the password. So I was wondering, if that's the case here?

Fixed. No more limit. Correct away on your battery horse's staples.

That's stupid of us to limit password size -- especially after all the "correct horse battery staple" discussion! [ ] But we're using the Devise module in Rails and definitely not storing in plaintext or anything too idiotic. Definitely need to change whatever stupid Devise default limits password length though. Thanks for pointing it out!
The source code is public. Delve away. It sounds like you have little to worry about even if the password storage is lax!
Oh, it's actually a private github repository currently. Talk to us if you want access to it though!
Just occurred to me you may have been thinking of TagTime, which is indeed open source:
For the 'Slug' value I entered "Sleep" and I was told only letters and numbers could be used. I entered "sleep" and it worked.
Ha, oops! On it; thanks so much for the bug report!

I'm going to take this opportunity to publicly announce the following goals:

Have fasted for 48 hours at least once by this time next year.

Lose 7 pounds by Burning Man.

Send two OKCupid messages every week.

Do seven Project Euler problems per week.

How did it turn out?

I set myself up to track how much time I spend actually working, using tagtime. The documentation for setting up tagtime to work with beeminder is pretty limited: it says to use a particular perl script, and then if you run that script (or look at the top comment) you can mostly figure it out. On beeminder, my graph would tell me that my time was being tracked automatically using tagtime, even before I'd set it up.

I had a hard time setting it up because I kept looking for how to get an api key, assuming that it wouldn't let me update an arbitrary user's graph, and that I must be missing something.

Yeah, the tagtime integration is super sketchy. It does let you update anyone else's tagtime graph but if that happens before we get API keys worked out, it's all undoable. The master copy of your data for a tagtime graph is your tagtime log. Definitely let us know if there's any vandalism or anything going on and we'll clamp down right away. There are just very few tagtime users so far (it being a perl script, and of course the whole concept being a little nutty, cf ) so it hasn't been an issue. We adore beeminder/tagtime integration ourselves -- like for -- but the tagtime part is really for hackers only right now. Btw, we also added a 24-hour delay before charging anyone's credit card so in case someone loses for any kind of technical reason (someone screwing with your graph, beeminder bug, or even your own extenuating circumstances a la ) you won't lose. I guess I mentioned that in another comment. To further repeat, we'd refund a spurious charge regardless, but then we'd have to eat a small fee, so better to catch it before that. A fundamental tenet of Beeminder is: no one ever loses money on a technicality. If you go off your yellow brick road it should be because your akrasia was more powerful than the amount of money you had at risk.
I have a bit of confusion about tagtime too (I have already sent you an email, actually): It is possible to alter the average poll time for tagtime - the default is 45 minutes and I have changed this to 25 minutes. Will this poll period alteration be recognised by Beeminder? Beeminder does seem to be over-reporting time spent on activities so far...
It should be, but I've never tried it with a ping gap other than 45 minutes! The way to find out is to count the actual number of pings in your tagtime log that have the relevant tags on a given day. Your beeminder datapoint for that day should be gap/3600 hours, where gap is the ping gap specified in your tagtime settings (45*60 by default). Oh, and do a git pull if you haven't since last week or so -- at one time it was in fact hardcoded for 45 minutes.
Actually, looking more carefully, beeminder is calculating accurately for an average of 25 minutes per ping. Tagtime however got enthusiastic last night - while it pinged me normally for most of the night, it pinged eight times in the hour between 4 and 5 AM. Beeminder then (reasonably) put me down for an extra hour of sleep that I didn't actually get. Them's the breaks when dealing with randomised polling!
  • It's a little strange that I have to set up the first data point when I register the goal. I'd rather set up the goal, then do the first day's work. I suppose this is splitting hairs.

I created two goals:

Both goals have perfectly tight roads. Is this correct? I would like to give myself some variance, since I'll probably not ever do exactly 180 minutes in a day. To start, I fudged the first day's value at the goal value.

Based on how you describe the system, it looks like I should expect to pay $5 if I practice 179 min... (read more)

Great questions! Here are answers! Giving yourself variance: Yes. It should become obvious as you add datapoints. The real nitty gritty about the width of the yellow brick road is here: (In short: The width of the road is constructed so that if you're in the correct lane today then you're guaranteed not to lose tomorrow.) Paying $5: Note that the first attempt is free. You only put money at risk if you go off the road and want to reset. Gory details at (note especially the part about the exponential fee schedule). We've hesitated to expose that option since we're not sure how to handle the case of someone deleting a goal they have a contract on. The option does appear if you delete the only datapoint though. The goal value is the y-value of the end of your yellow brick road. For weight loss it's obvious -- your goal weight. But for many kinds of goals, like "work out 20 minutes a day" for which the y-axis is the total (cumulative) amount reported, the goal value is probably not what you care about. This is confusing and we're scrambling to find a way to make it less so. That works beautifully with beeminder! Just specify your rate as 5*X per week. Well said. And yes, just use the road dial below your graph to flatten your road for the vacation. If it's a weight loss goal and you're going on an all-you-can-eat-buffet-hopping vacation, you can even make the road slope up for a while. Always with that one-week delay of course. Damn straight: I think harshness/mildness is the wrong question here. It's just trying to help you find the order of magnitude that the punishment needs to be to get you to treat it as a hard commitment. In some sense the steeper the curve the less harsh since it means wasting less money on punishments that were insufficiently punishing before hitting your Motivation Point. We went with, roughly, 3^x. You answered this one yourself, but, yes, we're f
Thanks for taking the time to respond. I rebuilt my guitar thing and added today's datapoint and now it seems to be predicting my path properly. Makes more sense now. I think I was confused at first because I had made a custom graph instead of using the "Do More" prefab. Neat software!

How well does this work for variables that are not entirely under your control? I'm specifically thinking for weight gain contracts. I'd like to motivate myself to gain weight, but past history teaches me that being sick will crater my weight.

I think it doesn't work so well. Especially with weight gain because, I suspect, if you had to you could always gain weight, but not in the right way. My suggestion would be to beemind pushups or protein consumption, or something where you do have direct control. Not being able to because of being sick is another story altogether though. For that we have an SOS Clause in the commitment contract:
This might have problems scaling up. Might I suggest asking customers for the email addresses of three friends, so that all three have to send the email in order for you to quit? There are all sorts of problems with that, but they're all greatly mitigated by picking the right three friends.
That is damn brilliant. Much more scalable (and I think just much more elegant) than the craziness we came up with. That said, I think we'll leave this on the back burner until it's an issue. (We're always reminding ourselves to only work on things that are solving problems right now, not problems we're going to have -- when we scale up, when someone wants to do such-and-such.) To quote Patrick McKenzie: "A startup's most likely problem with scaling is that it will have no scaling problems."

Basically, you're asking me to possibly give you money, in a way and an amount that helps me. The point is that there's no supply/demand curve here, so I have no way of knowing that this money is being effectively used once I give it to you. I will sign up if:

  1. You include a charity option, where some significant % (probably 10%-50%) of the money I give you goes to a charity of my choice. If the charity happened to be tax-deductible, it would be a deduction for you, not for me. But things like political donations should be allowed, I think. I think you sho

... (read more)
Isn't it better if we blow the money on cocaine and hookers, to maximize the pain of giving it to us? :) (Seriously though, this is highly valuable feedback; really appreciate it!) originally envisioned being the beneficiary of people's commitment contracts but found that people would not go for that. That should certainly give us pause, but here's why we think it could make more sense in our case: 1. The exponential fee schedule [] makes a big difference. In addition to removing the difficult choice about how much to risk, it makes it feel more reasonable for Beeminder to be the beneficiary. You're starting with a small amount at risk after you've already gotten value out of Beeminder. (That could change if you climb up the fee schedule very far though so we need to keep thinking about options for specifying other beneficiaries.) 2. I think we're fundamentally providing more value than StickK because of the pretty graphs and storing your data. As for where the money is going, well, it's still on the early side to say much about that, as you can see from these dogfood graphs: We'd love to hear more thoughts on this, like are we in fantasyland with the above rationalizations for being the beneficiary?

We'd love to hear more thoughts on this, like are we in fantasyland with the above rationalizations for being the beneficiary?

Nope. In fact, I'd go so far as to say that anybody telling you that you shouldn't get paid is full of.. it. Blow the money on whatever you want.

Even with exponential growth, people will spend a LOT more money to fail under normal circumstances. If you measure the actual value you're providing to people's lives, the amount of that value you'll actually be capturing is a negligible percentage, except for pathological Bruces (who will find a way to lose that money anyway).

If you want to give them a convenience option to also pay money to somebody else, then that's an additional service and should not reduce your fees.

More important: do not listen to people tell you how much you should be paid. Or more precisely, do not listen to people tell you how little you should be paid. That is a status conversation, nothing more. People do not tell the casino that they'll only bet money there if the casino gives the money to charity!

Anybody who makes this argument, you do not want as a customer. They are saying two things:

  1. "I expect to fail a lot",
... (read more)
An optional charity tip percentage is consistent with all of the above, and it is a requirement for at least one otherwise-willing customer (me). And I may be saying the two things pjeby says I am, but I'd claim that I'm also saying: ####3. I don't want to look or feel like a masochist. That's probably a common goal, and I believe that including a charity option would allow me to use and promote your service while meeting that goal, whereas I can't do either without it. Finally, to dreeves: pjeby has some plausible arguments, but data is more valuable than arguments.
That's a good point and a valuable datapoint. :) It seems like a funny thing for a rationalist to care about though... (Not the donating to charity part, of course, just that it seems orthogonal -- you should should donate to charity independently of your use of commitment devices.) I do see what you mean though. The use of self-binding is an admission of a fundamental irrationality (akrasia) so it may be valuable to have some plausible deniability. Side note: You probably typed a "3." instead of a "1." and the markdown editor thing "fixed" it for you. That's a big pet peeve of mine about markdown, which I otherwise love. Blatant violation of the anti-magic principle.
Yes, exactly. Obviously, the strategy involved for not looking/feeling like a masochist is to cover up with philanthropy. And of course the motivation behind philanthropy is not at all feigned; philanthropy is a stance of hope, and despair is one primary cause of my akrasia. But as you say, the only reason to connect that philanthropy to self-binding is to cover up the essential irrationality. I thought of a good way to express another reason for this desire: I also want to assert that I still have some "consumer-like" power over you, akin to an upward-sloping demand curve. As pjeby said, this is a question of status. But insofar as I'm addressing an "unjust" status relationship, where your fees are unrelated to your value provided, my refusal to buy without a charity option is (in some sense) a common human meta-rational bias to devote resources to punishing injustice. Anyway, as a startup business, status doesn't concern you in this sense, as much as growth. Note that both of these reasons --- not looking like a masochist, and addressing the "unjust" (or at least, unconventional in your favor) commercial status imbalance --- are essentially status concerns, so even while they are logically separate, they are emotionally related. (Of course, the status concerns in our commercial relationship are unrelated to our personal status relationship here, where you're the guy who actually did something useful, and I'm the guy who's bikeshedding it.) ps. I fixed the numbering above with an initial "####". Yes, it's annoying to have to do that. I actually like it when markdown changes 1,2,2,3 to 1,2,3,4; but 3,4,4 should at worst become 3,4,5 not 1,2,3
Do you think this mitigates the problem at all: In short, we (the founders) are reciprocating with our own commitment contracts, pledging $1395 to Beeminder users to force ourselves to stay on our own yellow brick roads. Maybe it's more in the category of a nice little gesture that most users won't even know about. It certainly doesn't address fundamentally the issue you raised. (Of course, that wasn't the point of it -- we just really needed to raise the stakes on our own commitment contracts since paying ourselves wasn't cutting it!) (PS: Not bikeshedding by any means! You can't imagine how helpful all this has been. Especially the further consultation we've been having with pjeby offline, but this whole comment thread as well.)
Not really. I mean, I guess it helps with the general status differential, but it doesn't resolve the general "ick" I get from the idea of a transaction where one of two things will happen: 1. I will get value, and you will not get paid. 2. I will get negative value, and you will get paid. Basically, someone always loses; it pattern-matches a negative-sum game, even though it's not one. But you're binding me to give to charity, then there's a way to see it as win/win from my perspective, and win/win from your perspective (success story, or charity story plus money; either of which is helpful for your marketing). ... This is about the 3rd or 4th rationalization I've given for why this is important to me. I honestly can't give a good external reason for why you should believe any of them, since they're probably not all truly necessary factors in why I'm making an issue of this. But I can sincerely attest that despite the shifting rationalizations, this feels to me like a good line for me to hold, and like something that will honestly help you get customers if you do it.
PJ, you're our new best friend! Great stuff on btw. I added homunq's idea to our feedback forum -- -- but you've convinced me that, although it might be a cool feature, we needn't consider it to be on our critical path. Thanks to both you and homunq. Contacting you offline now; very excited to talk more.
As to the cocaine and hookers: I know you're joking, but when I used a personal beeminder-like anti-akrasia strategy, which was 100% charity, I worried about this issue, and found that it was not a problem in practice. I think your rationalizations for being the main beneficiary are reasonable. I do not think that they justify you being the only beneficiary. How about this: allow people to add a "charity tip percentage" on top of their BeeMinder money. For instance, if I chose 100%, and I was due to pay $5, you'd charge me $10 and give half to charity. That way, you get the same money (except for the extra deterrent of the higher total), and I get to choose what percentage goes to charity. You also get interesting data about how much people value the idea of some of their money going to charity. You could start with limited options for the charities - a diverse menu of a dozen good charities would have something for anyone. I suspect I'd set my percentage somewhere in the 100-200% range. That is, of the total, I would want 50-67% to go to charity. Once you had data on what numbers people tended to choose, you could experiment with defaults. I suspect that this would really help you grow. You'd really rather be saying "we've helped raise $XXXX for charity" than trying not to talk about it. And since you are in a market where price is not a problem, you can afford to be somewhat generous. ps. the "paid" graph is plenty of info for me on how you spend your money :) pps. I admit that the idea that I'd be willing to have the money be about 50/50 between you and charity may be strongly subject to anchoring effect. Having now looked at, I feel a tendency to want to reduce your share. It is entirely possible that you'd make more money overall with a model. Above all, you need data, and you can't get data unless you somehow provide options.
This is really smart. Thanks! I'd like to get this recorded on our uservoice page: If you want to copy it there, by all means, otherwise I'll do so in a couple days. Thanks again!
I'd like to weigh in on this, agreeing with pjeby. I joined beeminder, am enjoying it and expect it to be of great use to me. I don't care even a little where the money goes. The amount is a penalty to me, and I like the way it is automatically set. If the money allows you to focus more on improving beeminder, that's great. If it ends up making you rich, that's just evidence you're providing a valuable service.
It seems like it could be a perverse incentive: you are selling help meeting our goals, but you're getting paid when we fail to do so.
Here's some discussion on google plus about that: And here's what I just added to the FAQ yesterday: (Do you think it addresses it sufficiently?) Q: You make money from people failing at their goals? A: Yes, but we make you fail less! We force you to toe the line at least for a while so that when/if you do fall off your yellow brick road then the motivation it provided up until that point still seems worth it. Everything we've worked on in building Beeminder has been with the objective of making people succeed and we'd have to be very myopic for it to be otherwise. It's very important to us that no one ever lose on a technicality. We want to make money by making you more awesome, and we're convinced that's what's happening. But don't take our word for it. Try it and see. The first attempt is free [].
I don't mean to imply that you wouldn't still be providing something of value, or would be operating in bad faith. What concerns me is that this kind of setup means you can't afford to always have your users best interests at heart. Consider one of your developers saying, "with this tweak, people will be 20% better at meeting their goals!" I'd love for you to add that feature, but it would be reducing the amount you take home. You very well may be high minded enough to add it anyway, but it's never a good situation to be in.

They could charge for access to the version with the tweak. "Premium Beeminder". With statistics to back up how much more effective it is.

Wow, thanks, Alicorn! That just made my much more convoluted reply moot. :) One more way to possibly mitigate the incentive problem:
...which is also crazy for a business. Bear in mind that there is a reason that bookies offer 50-to-1 odds on people meeting their weight loss goals. "Pay if I meet my goal" makes no sense economically or motivationally. It only sounds good to people who don't want to risk anything. If you want to do a non-punishing version, or let people use their own incentives when they fail, just charge a per-goal fee up front, or a time-based fee.
Hm, 50-to-1 is a bit of an exaggeration? It says "up to 50-to-1", and in the same paragraph, "bettors lose 80 percent of the time". Your point besides that stands, though.
What about some loose social pressure around that? Like, a special donors list of "kept on track for 6 months and then donated", or merch you can buy after so long without slipping, or something... Make it an achievement, and let people pay for extra recognition of it.
Better, for sure. But it's hard to get those statistics without implementing it for a while, and it's a tough PR job to move something that was free behind a paywall...

"Congratulations, you've been selected to try a new feature that we're thinking of adding to Premium Beeminder, free for six months!"

Make the default to give the money to you and have people able to opt out and give it to a charity. Make them opt out for each contract if they want to give it to charity.

How do I link my Withings scale to my Beeminder account? I see that other people have done this, so it should be possible...

Yup! I really love the Beeminder/Withings combo -- you literally do nothing but step on your scale and your graph stays updated. Send your Withings id (like a 6-digit number) and api key (or web key, or something, they call it) to and we'll make sure it's linked up.
To locate the Withings ID, log into your withings account, then click the share button. Select the "Post on the web and/or other websites" option, and it will display your Withings ID and key.

Nice idea, but to me that's not the real problem. My main problem is not about doing something once I decided I want to do it (on that part I'm quite ok, far from perfect, but ok), but about choosing what to do.

There are so many things I want to do, and so few time, that it's very common to me to "freeze" on a typical sunday morning, when I've the whole day to do something, but have to decide what to do. I often switch from one task to another not finishing any, or spend lots of time choosing what to do, or just decide to go with something fast ... (read more)

Make differently coloured bands corresponding to each task. you're only allowed to work on the task if you're wearing the correctly coloured band. The bands are placed far away from where you do the tasks or in a box with a complicated lock or something like that. You chose which band to wear first using dice.

I went to a preschool that used this method!
That's odd, I just made it up on the spot.
Well, they mostly did it as activity-rationing. You had to have a certain wrist band on to go outside, and every so often you had to change wristbands, that sort of thing. So different purpose, similar system.
This reminds me of Jerry's Map.
While I was hoping for something Seinfeld related and hilarious, that was still interesting.
Wait, that can happen?
Assuming you have a good idea what tasks you want to do in total, just automate it. Try to delegate away as many day-to-day decisions as you can. I extended my todo scripts for that exact purpose. I track how much time I spend on each task and how much time I should spend, based on a relative weight. (As in, this task is 2x as important as this and so on. I estimate my weights by starting with 200 usable hours per month and then distribute them among all tasks, using the assigned hours as a weight.) The script then checks if "time spent on task this week" is close to the relative time it should receive, according to the total time I've worked so far, and sorts all tasks based on their deficit. I then just do whatever project is furthest behind for as long as I can concentrate, let the script pick the next one and so on. Advantages: I never have to make any decision except when choosing the initial projects. (This happens rarely and is no problem.) No individual project ever gets ignored. I don't have to bother with timeboxes, I just work for at least ~15 minutes (I have an automated alarm for that) and then continue until I get bored / tired. I only have to personally check and maximize one variable - total time worked per day. It's as simple as "make this number go up". Works pretty well so far.
Here are my everything-looks-like-a-nail tips! I know the Sunday morning problem you're talking about but stepping back slightly from the particular Sunday morning you can probably identify what things are getting short shrift, or vice versa (the Sunday morning paralysis leads to just surfing the web half the day). If you can identify a few instances of akrasia then I think Beeminder can very much provide that guidance in choosing what to do: focus on whichever yellow brick road you're in greatest danger of driving off of. (Or if you're highly akratic, do whatever thing Beeminder is forcing you to do Right Now because you're skating the edge of your yellow brick road.)