Web designers seem to have a knack for doing too much work. So much so, that the rest of their life fades away into oblivion. I see it with so many designers. Not long ago, that was me as well.
This is what paved the way for my obsession with creating systems and processes. When you build your business to run more efficiently, you end up with more time to actually grow the business, or do non-work things that you love. You know... family, hobbies, friends... all that fun stuff.
The tools you choose play a big part in all this. As does a proper website planning process.
When the time came to find a project management tool for our web design business, I had no idea how hard it would be. There are SO many options, all of them proclaiming to be the best out there. It took around 4 months for me to make a decision (shame on me) after trying just about every option under the sun.
This post is here so you don't have to waste your time doing the same.
The systems I tested included:
Most of them have some really cool features that I loved, but there was always something that bugged me. Usually to the point of it being a deal breaker.
I believe the tool we settled on fits (most) web designers better than all of the others.
First, let’s cover a couple of important things...
Do you actually need project management?
There’s no point wasting hours digging through project management tools if you don’t need one.
I think it becomes important around 3 staff/contractors. Before that, you can get away with a simple “task based” system like Asana or Trello.
In these tools you can still invite clients into projects, collaborate and handle pretty much everything you need to at that stage of business.
Best of all, they are free.
If you’re in this category, my suggestion is to stop reading, try Asana and Trello and pick the one you like the most. No point wasting time on something that isn’t business-critical just yet. Or read on for the hell of it.
Separating your tools
The problem with a jack of all trades tool is that they are usually a master of none.
These days, things integrate really easily. So you are much better off finding something that does it’s chosen "thing" really freaking well. Then connect it to other tools via built in integrations or Zapier.
So let’s drop this all-in-one mentality shall we?
- Learn how to use Zapier with this Zapier tutorial
- You could also separate your file requests with Content Snare
Before choosing a tool, you should have a very good idea what you want your processes to look like. There’s a lot to consider. For example, do you need:
- The ability to track time
- Task dependencies (can only start task 2 when task 1 is complete)
- Percent progress for individual tasks
- List view/board view (maybe you like kanban style views more)
- Due dates & timelines
- Automating workflows
This list could go on forever.
If you haven’t decided on your process or just aren’t totally sure, read on and you might get some ideas from how we manage our projects.
Why we chose Teamwork
In the end, Teamwork simply had the capability to save us a lot more time, and enforce processes a little better than everything else. It was the one left standing when other tools were eliminated for one reason or another.
There were also a few things exclusive to Teamwork that were just awesome. Like the way they handle task templates (more on this below), and the integration with Teamwork Desk (which is freaking amazing).
Here's a brief summary of the others, and why we eliminated them:
- Good: Free. Super simple yet functional. Has capability for comments, checklists, assigning people and a lot of what you need. Great kanban layout
- Bad: Harder to manage once you have 3-4 people. Need external tools for time tracking, reporting, etc. No dependencies. Too "open" for team management.
- Notes: We used Trello for a while until the team outgrew it.
- Good: Free. Looks so clean and the interface is great. The paid version includes task dependencies. Has a board view.
- Bad: Can't switch between task list and board (a project is fixed one way). Need external time tracking. Subtasks aren't displayed very well.
- Good: Fairly simple system, clean and version 3 just feels nice to use
- Bad: Missing a lot of the important things that Teamwork has. I'd probably take Asana over Basecamp as they are pretty much on par, but Asana is free/cheap
- Good: Automations - by far the best part of Podio and unmatched by any other system (other tools claim to have automated workflows but they have nothing on Podio). Can build something custom that fits you. Board view is great.
- Bad: A pain in the ass to set up the first time as you get your head around how it actually works. No task templates (this was a big killer for web design). Expensive when you need automations
- Notes: This would have been our second choice.
- Notes: Too simple and is easily beat by others on this list.
- Good: Incredibly customisable. Works with version control tools and documentation tools. The "big daddy" of project management.
- Bad: Literally the worst user interface I have ever encountered. It actually makes me angry to use. Not even kidding.
- Notes: We actually use Jira for our custom web apps development side of the business (including Content Snare).
- Good: Lots of things. It's a very complete system and even has features for graphics proofing & approval. Automations are available but only on the enterprise plan (who knows how expensive that is)
- Bad: Expensive. I'd say out of range for most web designers.
- Notes: For agencies with multiple full-time onshore staff, Wrike is a very good option
- Good: Very nice, simple interface. Easy to use.
- Bad: It's a project manager, not a task manager. Only really for high level stuff. No way to enforce anything - it's just too flexible
- Notes: I wanted to use Dapulse so much. But I just couldn't make it work for us. The interface is so nice!!
- Good: A lot of the same stuff as Teamwork
- Bad: Very similar to Teamwork with a higher price tag (per user pricing)
- Notes: Honestly Proworkflow is a great option. But for basically the same features we were using it was going to cost us about 3 times as much. The price has come down slightly since we tried it. Still a great option.
How we manage projects
After those 4 months of signing up for trial after trial, and getting stuck on all their email lists, we settled on Teamwork.
When we first signed up, there were two main problems I had with Teamwork. One was that you don’t get the awesomeness of Podio’s custom automations, the other being no board view.
Since then, they introduced board view, making Teamwork about an inch away from being perfect for us.
Side note: Many tools claim they have “automated workflows”. Pretty much all of them are not even close to having a truly automated workflow builder. The exceptions are Podio and the enterprise (very expensive) version of Wrike.
The very top level of any project management system. If you couldn’t create projects, you’d be in a bit of trouble. Most tools are pretty similar in this regard. In Trello you get boards, in Podio you create an “app” called projects, but otherwise there isn’t a lot of difference.
In Teamwork, there are the most important functions for us:
- Adding people to the project with different levels of access
- Marking projects as favourite (to bring common projects to the top)
- Categorise projects
- Archiving finished projects
- Add files, links and notebooks
- We use these to add any special info about the project - e.g. the brief, existing website links, profiles, designs, images and more. Basically anything you could want for the project, all in one place.
There are a lot more features available. We just don't use them. For example you can:
- Add clients to the project
- We don’t use this because now we use Teamwork Desk for clients interactions (more on this to come)
- Create roles within projects who are notified when work is to be done
- A role might be “developers” or “designers”
Task management sounds like a simple part of the process, but this is where you see the big differences between project management systems. There are so many ways to handle tasks. There are many different ways of doing things that you might not even realise are possibilities.
What impresses me the most about task view is that you have quick access to so much, without the interface being clogged up. In the screenshot above, the task level options are only displayed when you hover over that task.
Here’s how we use the various elements.
Sub tasks are exactly as they sound. A way to create a task that sits underneath another task.
For example, you might have a “Set up new WordPress installation” task, with a sub task of “Install Yoast SEO”. That means that the plugin must be installed before the WordPress install can be marked complete.
You can see three layers of tasks in the screenshot above.
Task dependencies are simple, but amazing. They are one of the best ways to keep a project on track.
The simplest task dependency is a sub task. The main task cannot be marked complete until you mark all the subtasks off first.
This isn’t limited to sub tasks though. Take this example: you might only start development after design is finished. So you would say that development depends on design being finished.
As soon as the design task is finished, the person assigned to development is notified. This keeps things moving and only bugs people when they need to be bugged.
The red icon indicates that this task cannot be marked off as it depends on other tasks being completed first.
One of my favorite parts of Teamwork. Many other systems will tell you to create a whole project as a “template” and just copy it. That works sometimes, but falls down when you have to assign every task in that template to people, one at a time.
Teamwork’s twist on this is the thing I love.
When you create a task template, instead of assigning someone to it, you assign a placeholder like “Project manager” or “Developer”. When you drop that template into your project, it asks you who the manager & developer are.
You can also set dates relative to the start date. So I might say “+5 days”. When you drop in a template, you set the start date and it fills out the rest, optionally skipping weekends.
Task Level Options
I also love how much control you get over things at the task level. The easiest way to explain is to go through them.
Log time down to a task level. That way you can see which tasks are eating the most time over a series of projects. Identification of time consuming tasks shows you the best places to optimise your process.
Of course these logs contribute to the overall project reports so you can see how much of the budget you have used for any given project, at a glance. We have a weekly reminder for the project manager to check how much time has been burned so far and see if we are on track.
These fire off notifications when something should be started or is due. The only thing I feel missing here is the ability to repeatedly nag someone when they are overdue. This is currently a manual process for our project manager.
Mark tasks as High, Medium or low priority, or leave it blank. A simple way to indicate which things need to be done first.
Schedule reminders to be sent to anyone, for anything. Set the time, who it goes to, the message and whether they receive it via email, push notification or SMS. For example, if you tag a task “waiting on the client”, at the same time set a reminder to follow up in 5 days.
You can watch, or set someone else to watch a task. That means they get a notification for any activity on that task. This is useful if there is something super critical that you need to keep an eye on.
Comments work as you would expect in any other system. Write messages about a specific task, with the ability to tag and notify teammates. The most common way we use this is to tag someone so they get notified about something that needs their attention.
Add customisable tags to the task with a custom colour. Some of the tags we use are “On Hold” and “Waiting on Client”. You can add whatever you like.
Set a task to recreate itself every day, week, month etc. We use this to create a task for the project manager to evaluate the progress of every open project every Friday, or to remind a VA to post on instagram.
Attach files at the task level as well. We use this for design revisions.
Hide tasks so they can only be seen by certain people.
Board view is freaking amazing. For a long time I said Teamwork would be just about perfect if it had a board view. Well… now it does.
Board view is simply another way to view tasks. You create a series of columns, with whatever headings and colours you like. Tasks can be moved to the relevant stage on the board with drag and drop.
Anything that isn’t on the board yet shows up in the backlog on the left. This is where the project manager moves tasks into the board and assigns them to team members.
When a task is added to the board, it gets an icon which can be seen in list view. So no matter how you view the tasks (list or board), you can see what state it is in. This in my opinion is exactly how it should be done. Thank you Teamwork.
The Gantt view is a bit “meh”.
It’s very basic and can’t be compared to full blown Gantt tools like MS Project. We don’t even use it, but I’m including it here so you can at least see.
What it does
- Slide tasks forwards and backwards
- Push out dates for dependent tasks when you slide one forward
What it doesn’t
- Account for weekends or staff availability
- Pull dates forward when you drag something left
These last two things make it a bit of a pain. It’s using “dates” instead of “manhours” when deciding where the bars start and end. That makes it fairly useless for most people. 🙁
Proper time tracking becomes important when you have a team. Not to keep an eye on your team, but so that you can find inefficiencies in your process or places where it might help to train people.
It’s great to have a few different ways to get time data into Teamwork.
- Directly from the web interface
- From the mobile app
- Chrome extension
- Desktop app
Any way to make it easier on your crew to track their time is good news. That said, sometimes people do forget. Our project manager gets a recurring reminder to check time entries and make sure everybody is on top of it.
With most project management systems, you normally have two ways to handle client comms.
- Add them as a user so they can interact with the project management system
- Stick to email and just add tasks in manually
You can do both of these with Teamwork. However I don’t think either of them are ideal. We’ve tried both, and both setups were ugly in one way or another.
For number 2 it is pretty obvious - email sucks. It’s hard to keep track of things, and you have to remember to email the client when things are finished.
Adding them as a user sounds like a great idea. In practice it tends to have some problems.
Problem #1 - Client having to learn a new system
First up, I can pretty much guarantee that clients will still send you emails despite having access to their project area. Most clients won’t have used your system before, so there is a tech hurdle there that people just don’t want to deal with.
You could create some videos or training for them, but there’s still that extra level of complexity that quickly becomes a pain.
Problem # 2 - Access and permissions
What if you want to internally chat about something without the client reading it? Depending on the PM system, you might be able to restrict access to certain parts, but it usually some annoying workaround. What if the client starts playing with things they shouldn’t, like accidentally marking something as done?
There are a lot of small things like this to consider. In the end we found it just way too annoying to give them direct access.
Then, we discovered what is probably the ultimate solution. Enter Teamwork Desk.
Teamwork Desk is support desk software, a bit like Helpscout. It's email-based. That means support tickets/requests are created by emailing a special email address. As far as your client is concerned, they are just sending emails, but to your team they come in as tickets.
We have a [email protected] address. Clients are required to send all their change requests here. Then we have a [email protected] address where any “maintenance” clients can request changes. Finally, we have a [email protected] account where any website downtime or security warnings get sent.
In Desk, these come into different inboxes. You could assign a different person to each inbox, or view everything together in one “unified” inbox.
If your client is naughty and emails you directly, instead of the special address, all you have to do is forward it to the appropriate one (then tell the client off).
And here is the amazing part.
Let’s say your client has some change requests that come in an email. The process works like this:
- See the request come into Desk
- If any more info is required, respond directly from Desk
- The client simply replies to their email to provide more info
- That info pops into the ticket
- You click “Create Task” from the ticket, and add it to the correct project
- The task is created with a reference to the ticket, so whoever is assigned can see everything they need to complete it
- The ticket is marked as pending, so it doesn’t bug you any more
- When the task is complete, it pops back into Desk
- Let the client know everything is complete.
So, so smooth.
One of the most important things a good PM system needs is a way to see how a project is tracking, at a glance. This is what the overview screen does.
The main things we use this view for are:
- Time spend
- Burn down chart (project trend). The three lines are
- # tasks completed each day
- # remaining tasks
- # completed tasks
Expenses & Billing
While we don’t make heavy use of the billing portion of Teamwork, it can be handy at times. Especially when the client requests changes outside of the scope of the initial project.
In billing, you can add two types of expenses:
- Time that needs to be billed
- Fixed expenses (e.g. purchase of a plugin, or agreed fixed-price work)
When the time comes to charge your client, you can round up a set of unbilled time and fixed expenses and add it to an “invoice”.
From here you can export it directly to Xero and mark it as complete. This marks the expenses and time as billed so you don’t accidentally add them next time.
The only reason this has been left to the end is because we don’t use milestones. They are important to some people though.
Milestones can be used in a variety of ways. One of the more common are project phases, like:
In Teamwork, you can assign task templates to milestones. That way, the tasks that relate to a specific milestone. For example, in the “Design” milestone, you might have:
- Homepage design
- Blog design
- Contact page design
Where each of these has its own task template.
This isn’t something we need, so we simply don’t use it. Another great Teamwork feature is to be able to turn project features, like milestones, off so they aren’t cluttering the screen.
Use Teamwork it’s great 😀
But seriously, good project management is dependent on a lot more than just the tool. Teamwork is our tool of choice because it does everything we want, and it fits our process well.
The most important thing is building your team with training, systems and culture so that they actually use whatever tool you have in place. It’s only as good as the data that goes in. As they say… shit in, shit out. That’ll have to go into a different post.
What system do you use? Let me know in the comments!
If you’d like to give Teamwork a try, sign up for free here. Your first two projects won’t cost you a cent.