!
byJakub Mikita
Jul 06, 2022
Have you ever completed or been a part of a project that exceeded the deadline or budget? Yeah, who hasn’t? Do you know why that happened? I can tell you why — because of a lack of planning.
That’s it. You can close this article now and start a new project with better planning. Or… you can read about our experience and find out what to look and account for.
Planning is complicated, and you cannot foresee everything, but starting prepared reduces the risk of an unexpected outcome
This article could cover many software project types. Still, my primary focus is website or web app development because I’m experienced with running a software house since 2015. I’ve been a part of 50+ custom-developed projects, and I noticed a lot of missed things.
This article can be valuable to anyone, regardless of their role in the process. Whether it’s ordering the development (you might be the business owner) or project management (you might be the software house or agency owner), or you’re responsible for the discovery or planning phase (you might be the one who’s doing the job). I think you’ll find this helpful.
So, speaking about a custom website, what two things would it need to come alive? The design and the code, right? That’s the bare minimum a web project needs, and with “only” these two, it can be operational. If that’s the case, it’s only the cost of producing the design and code.
You may already know that’s not true, but have you thought about everything? I’ve gathered all the not-so-obvious hidden costs you may encounter while budgeting for or creating a web project, and I’ll show you how you can keep all of these under control.
Let’s get into it.
This one is easiest to foresee because it’s an expense you need to cover at the beginning or a very early stage of the project.
It includes things like fonts, stock images (or photo sessions), and various licenses for 3rd party software. Anything that’s needed to compose the design or provide functions you need for the software.
If the project’s website creator does “time and material” billing, they should (at least in theory) account for all the producer goods before adding the cost of time spent.
In my opinion, the client should not be paying for the things that are part of the production process, like fonts, icons, developer licenses, or photo sessions — that’s the creator’s expense. By should not be paying I mean this cost should be baked in the final price.
The client should be paying for everything that has been used only for their specific project or any recurring costs, like a WordPress plugin license purchased only for this particular job.
Either way, all these costs should be planned upfront or at least estimated.
The website needs a server and domain, yes, that’s obvious. But let’s dig deeper.
We’re all already used to the free Let’s Encrypt SSL certificate, and most of the hosting providers include it by default. But sometimes, it’s worth adding another layer of authorization. LE certificate is a DV (Domain Validation) certificate, which proves you’re an owner of a domain, but there are others. You may want to purchase an OV (Organization Validation) or EV (Extended Validation) certificate to prove that not only is the domain yours, but you’re an authorized entity to serve it. Can you imagine logging into your bank account having in mind that the SSL cert is only telling you the domain is right? Roman Munteanu covered all the differences between free and paid SSL cert so you may want to check out that article.
I won’t elaborate much on the domain. You need it, and it’s an annual cost you’ll have to cover and budget for, and that’s the client’s expense.
I’ll end this section with the server, aka, the hidden cost of hosting services. You can start as low as few dollars for the cheapest shared hosting you can find. But what if you go viral? What if someone tries to hurt your business with a DOS (Denial of Service) attack? You need to scale and optimize for performance and security.
You can use a plethora of solutions, starting from a dedicated (and optionally managed) server, hiding behind a cache layer and/or WAF like Cloudflare, or migrate to Cloud-based solutions from Microsoft, Google or Amazon. Cloud-based hosting can be scaled up with a few clicks, and it’s limited only by the depth of the client’s pocket. So yeah, that’s the client’s expense.
Account for the growth.
Boy, oh boy, this one is closest to my heart as I’m the founder of our software house Department of Web. We deeply care about quality, so our costs sometimes escalate quickly, and it’s tough to plan for these. We cover that expense on our own to lower the tech debt and to make sure we’re delivering a top-notch product. In the meantime, we train our staff.
The QA (Quality Assurance) and technical review alone can eat up to 15% of the development time. To clarify — that’s only the cost of checking the work, not fixing it!
If you’re the one who’s doing the work or managing it, account for this because if you don’t, it will backfire on you or your client. It can be technical debt, missing functions, poor UX, or a poorly designed foundation that’s hard to extend.
All serious projects that are built to last, make money, and thrive, need to be as close to perfection as possible. If they aren’t, someone will pay for that later, be it through the cost of fixing or the cost of lost opportunities.
The best way to mitigate this issue is to add time or budget margins. We worked out that something close to 20% would be accurate for the majority of projects, but it depends on the number of unknowns and the size of scope or brief. The second-best thing is to control the progress and adapt quickly.
We’re switching over to the client’s cost. Verbless, please! Ladies and gentlemen, the scope creep! 🎉
Scope creep (also called requirement creep, or kitchen sink syndrome) in project management refers to changes, continuous or uncontrolled growth in a project’s scope, at any point after the project begins. This can occur when the scope of a project is not properly defined, documented, or controlled. As per Wikipedia
Every single feature added or changed while doing the project is a hidden cost. But! You can shed some light on it to make it a bit more visible and under control.
Imagine building a super-simple blog website when all the designs have been approved, and almost all development work is completed. And then, all of a sudden, you say (or hear): “oh, and the newsletter signup form, please.”
This can be easily planned for with good preparation and a discovery phase. It’s easier to account for “we’re going to need a newsletter signup form in the future” than dealing with it along the way, when changes may be required in the entire website concept.
The newsletter signup form is only a silly example, but with the worst-case scenario, there can be dozens of these during the lifetime of a project.
Just try to think about the future and all the opportunities. And pick the right ones.
You thought that when you released the project to the public, you’d be done? You’re so wrong.
You cannot make a baby and leave it on its own
The project will need to be taken care of, but let’s start with trivial examples of hidden costs you may not account for. That’s the periodic cost of services you have used to build the product, like hosting, domain, or licenses. When you combine this, you may encounter a significant bill in your email a year post the project start date. Be prepared.
It’s not only that. Projects based on any popular CMS (Content Management System) like WordPress need to be maintained. The bare minimum would be to update all the system components like plugins, but this may also include uptime monitoring.
There’s more. If you released an app, maybe there’s a need to provide support services for the end customer?
Not to mention ongoing costs of SEO and marketing…
I’m not sure if you noticed while reading the article, but most of the hidden cost remediation is as simple as this:
The more spent on the precautions, the fewer unexpected costs in the future
It may feel counter-intuitive initially, and many may think something like, “I spent X $ (or hours) already, and we haven’t even started yet”, but it’s worth it, trust me.
Did I miss anything? What was the most astonishing thing you forgot to include in the budget?
Jakub Mikita
The Master Organizer who, like a chameleon, finds his place in roles ranging from CEO to Senior Developer, Project Manager, and marketing support, and in private life, as a proud father of one.
He excels in team management, business process creation, client negotiations, and applying agile methods for company growth. Once the creator of one of the oldest Polish WordPress blogs - WPART, today he can be persuaded to write articles that captivate from the first sentence.