Custom goals

Custom goals let you create your own goal type by adjusting many of the back-end goal settings. All of the default goal types are just specific combinations of the settings. So if you've always wanted, say, an Odometer goal that makes you stay below it rather than above it, a custom goal is the right answer!

How do I make a custom goal?

If you're a Bee Plus or Beemium subscriber, click the Convert to Custom button at the bottom of the Settings tab below the graph.

Important note: change settings with caution if the goal you're converting already has data and graph history. Because the goal settings are applied to the entire graph, if you do something like change the good side of the line, your old extra-safe days will turn into way-off-track days and you can instantly derail your goal! Of course, this is not legit and we'll undo it when you email us in support, but it's always nicer to avoid it in the first place, right?

It's simpler to start custom goals from scratch when you can. You can immediately delete them to "undo" any derailment that may occur, and because there's no history, it's a lot less likely to happen in the first place!

When should I use a custom goal?

Use a custom goal when none of the other types quite fit what you're looking for. You can also set custom goals to use autodata sources differently than the default goal types you get when creating them.

For example, you might create a weight goal that automatically sources data from your Fitbit Aria scale, then turn it custom to enable more settings. If you change the settings appropriately, you can make it so instead of beeminding your weight, you're actually beeminding whether or not you used the scale today. Really useful for the common "avoiding the scale" problem, and it takes just a couple minutes to set up with a Beeminder custom goal!

(To create that goal, set up the integrated weight goal as usual. Go to settings and click "convert to custom". After that, you need to change the settings to {good side: above, direction: up, odometer: off, cumulative (auto-summing): on, aggday: binary, noisy: off}. Use rate = 7/wk for the most hardcore commitment!)

Another example would be creating a "keep-under" goal for Toggl, e.g. for ensuring you don't spend too much of your work time on a single preferred project. For that you'll just need to change the settings so that the good side of the line is below, and the direction is up. 

How should I enter data for a custom goal?

It depends on the settings you enable — mostly on whether the goal's data is auto-summing or not. Auto-summing data is like a Do More or Do Less, while not auto-summing covers the rest of the goal types.

What do all the settings mean?

  • Good side of the bright line: whether you want to be above or below the bright red line. Above is generally for things you want to do more frequently or increase over time, and below is for things to do less frequently or decrease.
  • Direction of red line: whether the line should be going up or going down. Going up means you should have a positive goal rate, and going down means you should have a negative goal rate.
  • Cumulative (AKA auto-summing): whether your datapoints should be added together each day or not. Do More and Do Less are cumulative; the other goal types are not.
  • Resettable odometer: whether a 0 datapoint resets your rolling total. See the Odometer page for more information.
  • Aggregation: how Beeminder plots your datapoints every day. More info and a list below!
  • Plot all: whether Beeminder plots all your datapoints, or just the result of the goal's aggregation method.

You can also find a more in-depth explanation (with even more hidden settings explained!) in the Beeminder API docs.

I changed a setting and my goal instantly derailed! Help!

Contact support (best to do this by replying to the legit check email you'll get when you derail) and we'll cancel the charge. Reverting your change beforehand is very helpful if you want your graph to be fixed; some big changes might mean your graph just won't look right. In those cases you might want to fiddle with it yourself using the visual graph editor, or just display your data from the date you changed the custom settings by changing the "x-min" value. If you're not sure, it won't hurt to ask support what we can do!

What do each of the aggregation options do?

The aggday setting controls how Beeminder interprets all your data on each day, according to the chart below.

Option Name Daily Aggregation Calculation
last Only most recent datapoint counts
first Only first datapoint counts
min Smallest datapoint counts
max Largest datapoint counts
truemean Mean of all datapoints
mean or uniqmean Mean of all unique datapoints
median Median of all datapoints
mode Mode of all datapoints
trimmean Mean of all datapoints excluding the top & bottom 10% of values
sum Sum of all datapoints
binary Plots a 1 if any datapoints have been entered, otherwise 0
nonzero Plots a 1 if any nonzero datapoints have been entered, otherwise 0
triangle (sum of datapoints * (sum of datapoints + 1)) / 2
square Sum of datapoints squared
clocky Sum of differences of pairs
(so-called because you can use this method to simulate
a timer, by entering start time & finish time as consecutive datapoints)
count Number of datapoints entered
skatesum Sum of all datapoints, capped at the daily min that the bright red line requires
cap1 Sum of all datapoints, capped at 1

Why does my graph look weird after I change the aggday setting?

Try turning off plot all (if it is enabled) and see if that solves the problem.

With plot all on, Beeminder shows both the datapoint values and the aggregated value that actually counts toward the goal for the day. If your datapoint values are very different than the aggregated value that counts for the goal, the graph scale might end up out of whack as Beeminder shows you both data values. A common example is plotting your scale usage with binary aggday (values 1 or 0) while using your weight (values much higher than 1 or 0!) as datapoints.

If your rate is set correctly, the goal will still work perfectly and show the right countdown to derailment, regardless of whether plot all is enabled or disabled. The graph, however, might look much nicer one way or the other!

Still need help? Contact Us Contact Us