New in Basecamp 3: To-do Groups

A little thing that’s a big deal.

For years, we’ve been making to-do lists in Basecamp that looked like this:


See those === DIVIDERS ===? We were trying to group related to-dos together within a list. All we wanted was to bring a little structure, and an extra ounce of organization, to a single flat list.

We weren’t alone. Whenever a customer showed us how they use Basecamp, we’d inevitably run into a similar === DIVIDER === pattern. They were trying to do what we were trying to do.

We were all hacking it. As of today, the silliness is over. No hacks required!

We just launched To-do Groups in Basecamp 3!


What’s a group?

A group is like a sublist on a list. It’s organization, it’s structure, it’s an envelope, it’s a box. It has a header, and to-dos grouped below.

The anatomy of a Basecamp 3 to-do list with two groups

When you drag a group header, all the to-dos under that header move with it. If you click the header, you go to a separate page with just those to-dos on it. You can discuss a group, you can archive a group, you can see all the to-dos completed in a specific group, you can ungroup a group. You can make as many groups on a list as you’d like (but you can’t make a group inside a group — that would lead to an eventual, over-organized mess).

How to make a group

There are two ways to make a group of to-dos on a list.

  1. To make an empty group (which you can fill later), click the hamburger menu to the left of the list name. Select “Add a group”

Make a group from the list header

2. To group together to-dos that are already on a list, shift-select multiple to-dos (hold down shift, and click the hamburger menu to the left of each to-do you want to group), and select the “Group them” item in the menu.

Group some existing to-dos together

Adding to-dos to a group

There are a couple ways to add to-dos to a group.

  1. Simply drag an existing to-do down below a group header. It’ll snap into place and be part of that group for now on (or until you drag it back out).
  2. Or click the hamburger menu next to the group name, and select “Insert a to-do” from the menu.

Insert a new to-do right below a group header

Moving all to-dos a group together

To move a group of to-dos together, just click+hold the drag handle/menu to the left of the group header. Then drag above or below any other group. To make it easier to move, the header will collapse to a single line and the number of to-dos you’re moving will show up as a little badge to remind you you’re moving multiple to-dos at once. Like this:


Isolating a group for review or discussion

One of the great bits about groups is that clicking on the group header will take to a separate page which isolates just that group of to-dos. Now you can focus in, have a discussion about the entire group, add to-dos to that group, and see all the completed items for that group.


On the left we have a full list with a few different groups. On the right, I’ve clicked on the “Android” group header and now I just have open/completed to-dos from that group, plus a conversation about the group below.

Ungrouping to-dos

Make a group, but decide you’d rather have them “loose” again? Easy, just select the menu next to the group name, and select “Ungroup”. The group header slides out, fades away, and the to-dos jump up to the top of the list where any other loose, ungrouped to-dos are listed.

Ungroup to-dos that were grouped together

Use cases

To-do Groups are excellent for organizing work around disciplines (to build this feature designers need to do this, programmers need to do that, and when QA finds something fishy they can log things, too). Or for moving work through phases. You can drag to-dos between phases, set up work in advance, and even keep future phases empty until it’s time to slot work in.


A couple of simplified examples of how groups bring structure to to-do lists

And here’s an example from an actual project we have running right now:



BONUS: Add to-dos from anywhere in a list

Even if you have no need for groups, we just made Basecamp 3’s to-do lists better for everyone. Before you could only add to-dos from the bottom of the list using the “Add a to-do button”.

Before today, the “Add a to-do button” was the only way to add to-dos to Basecamp lists.

If you wanted to add a to-do at the top of a list, or somewhere in the middle, you had to first add from the bottom and then drag the to-do into place.

No longer!

Now you can add to-dos anywhere in a list. Just click the hamburger menu next to any existing to-do, any existing group header, or the list title itself, and you’ll see an “Insert a to-do” menu item. Select that and you’ll be able to add a to-do right in place.



The big idea

We set out to incorporate and improve on hacked patterns we saw in the wild. We did that. We set out to make to-do lists more powerful without making them more complicated. We did that. We set out to keep to-do lists the same for those who didn’t want to use groups. We did that. We set out to prevent over-organization and sub-sub-sub-lists. We did that. We set out improve baseline to-do list interactions (like adding anywhere). We did that.

In addition to these new features being available on the web-based version of Basecamp 3, they’re also available on the desktop versions for Mac and Windows, and on iOS (iPhone and iPad) and Android.

We’re really proud of this new release, and we hope you find it especially useful. Goodbye === HACKS ===, hello GROUPS!


All growing businesses run into the same fundamental problems. Hair on fire, buried under email, overwhelmed by chat, too many tools, stuff slips through the cracks, information spread everywhere. End all that with Basecamp 3. After switching to Basecamp 3, 89% of business owners report having a better handle on their business, and 84% report more self-sufficient teams. Get it all together in one place with a single system: Basecamp 3. Try it free today.


Enjoy this post? Get SvN updates delivered straight to your inbox.

No spam, no fluff — just one email every week with the latest posts.

Leave a Reply

Your email address will not be published. Required fields are marked *