by David Snopek on October 25, 2016 - 11:11am

As Drupal professionals, you and I know that all sites need maintenance and support after they're launched. There's security updates, bugs, minor tweaks and questions to be answered. Clients might not know that, so it's our job to educate them.

We find that it's easiest to discuss this before development starts on their new site, rather than after it's done, but whenever it happens, you'll need to agree to a plan for when things come up.

Most Drupal shops and freelancers default to "hourly as needed". Usually clients will go along with that - or even insist on it!

However, we strongly believe that billing hourly for site maintenance and support is WORSE for clients (and you).

Read more to find why - and learn a better way to do it!

Why clients think they want hourly

There's a couple reasons!

First of all, the project up until now was (probably) billed hourly. It's a familiar model for both client and Drupal shop, making it the path of least resistance.

However, the biggest reason, is that it's hard for clients to envision what sort of things they'll need.

And since they can't think of what things they'll need, it must not be very important, so only paying for a couple hours as needed will (they think) save them money.

However, it's likely that billing hourly will actually create more trouble and headache, while costing them MORE money in the long run.

Every request is a "mini negotiation"

When a new support and maintenance request comes in, you need to tell the client how long you think it'll take, even if that's only an hour or two.

Then they need to consider it, and either move forward, decide not to do it, or question "why something so simple could take so long?" Or worse yet, "why should I have to pay to fix something that should have worked in the first place?"

This creates extra stress and anxiety for the client - and extra work for you (estimates and e-mails don't write themselves)!

A "small change" is never really small

When starting from scratch, a Drupal developer can make huge progress very quickly. The big, broadstrokes are easy. You can build 70% of a site just by enabling and configuring the right modules.

It's the little details that tend to take up the majority of the time, especially little inexplicable bugs, where you think it should just work. As tech savvy people, we know this from experience - waay too much experience. ;-)

So, when a client asks you to make a "small change" and you say it should take 2 hours, but ends up taking 8 - you're not surprised. But the client might be!

This makes the cost of support and maintenance really unpredictible, and difficult to budget for the client - and this can create unnecessary friction in your relationship with them.

We can't get to that until ... next week/month/year

As a Drupal shop or freelancer, you want to keep all your developers (or yourself) billing as close to 100% of your hours as possible. Unbilled time (that isn't invested in internal projects or Open Source contributions or something) is just wasted money.

So, when a support and maintenance request comes in, you're probably focused on making your next project milestone, and might not actually have enough spare developer hours to help them!

With "hourly as needed" it's hard to reserve time to do support and maintenance work, so that when something comes up, you might not be able to help until next week or a couple weeks.

However, from the client's perspective, the website build could have progressed slower (so long as the deadline was met) but it's the support and maintenance request they want you to get done ASAP!

There's a better way!

Billing hourly (or daily or weekly) definitely makes sense when building a new site or feature.

However, we highly recommend selling maintenance and support plans at a fixed monthly fee - and have found that once clients have tried it, they like it better too!

Rather than having to estimate and negotiate for each and every request that comes in, our clients can make unlimited requests (within a specific scope depending on which plan they chose) and it's all just included. This reduces friction, increases trust and allows clients to predict their costs.

It also frees us up to spend as much time as necessary to fix a problem, without worrying about how delivering an invoice for 8 hours for a "small fix" will look to the client. Usually, this means that clients will actually end up paying less over the long-term, than they would if they paid hourly.

And because we have dependable monthly revenue for maintenance and support, we have sufficient developer hours available to handle any requests right away. So, our clients know that we're always ready to help with whatever comes up!

What's your experience with doing Drupal maintenance and support with your clients? Do you do support hourly, or on a monthly subscription? Write a comment below!

Want to sell maintenance and support plans to your customers (because you know they need it) but prefer to keep your developers' time focused on building new sites or features? We can act as your "support department" and provide white-label services to your clients on your behalf!


Want to read more articles like this?


Subscribe to the blog and recieve e-mail updates when new articles are published!


Great article and share of how you guys are doing your maintenance.

It would be great to have a chat to share how you guys are scoping out your maintenance agreements to revolve around scope. Hit me up if you'd be up for a chat.

Thanks, Gene! We'll follow-up with you via e-mail for a chat. :-)

However, we actually have an example of our maintenance agreement posted publicly on the site:

We were originally a little afraid of clients trying to take advantage of our unlimited "support buffet" and have had to make some minor adjustments, but overall, it's worked out much better than expected!

I have seen gold, silver and platinum plans where each one is a fixed price and a fixed number of hours per month. For example, the silver plan is 3,000/mo for 20 hours. The customer chooses a plan, enters the user stories and that allows the agency to project the amount of work. The client receives an email when they're at 80% of their 'allotment' for the month so this helps clients adjust expectations.

Thanks, Helene!

Are the user stories for new features? If so, to me, that sounds more like "continuous development" rather than support and maintenance. If a client has a plan like that, the support and maintenance stuff probably just gets lumped in with the rest of development, so that probably ends up solving both problems at once. :-)

Thank you for sharing your work method!

I see you do not make a difference between types of websites. In this case a small business website with 5 pages and +/=- 60 contrib modules would pay the same fixed price as a corporate website or webshop with 500 pages and 200 modules. I find that hard to communicate to a client. Shouldn't larger websites pay more?

Thanks, Pieter!

Before taking on a client, we do a free site audit (learn more and see an example) where we evaluate - among other things - the estimated long-term maintenance burden of the site and based on that, we make a recommendation for which plan makes the most sense. However, it also depends on the needs of the client (maybe they have a complex site but only want help in extreme circumstances?) so the choice is ultimately up to them.

In short, the size and complexity of the site does get factored in - it's just not a simple matter of counting modules or pages. :-)

Add comment