Tips to start a freelance web project in 2024 and not loose your soul

Hi there, you probably are a freelancer and did some projects here and there and would like to know how a good freelance web project is executed. Here are some tips I follow to not loose my soul.

Get to know the client

As the saying goes: "The customer is always right." It is important to understand the client's needs and expectations before starting a project. This will help you deliver a product that meets their requirements and exceeds their expectations. Most of small business owners could't care less about tech stack or design patterns and whether or not it is the newest and coolest thing. They just want a website that works and looks good. Also bare in mind most of small business owners don't know what they need. Perhaps they don't need a new website or a website at all. Try to advice them on what their goals are and how they can achieve them. Most of the time clients say they need a website because they here others say it. But let me phrase it that way, most small businesses could also live with a basic html template from themeforest.

The S.M.A.R.T. goal and success criteria

If you decide to take on the project, you need to first ask about smart goals. SMART is an acronym that stands for Specific, Measurable, Achievable, Relevant, and Time-bound. This will help you and the client to understand what the project is about and what the expected outcome is. You obviously don't promise the client a specific outcome but you can promise to work towards it. Such a goal could be: "Increase the number of leads by 20% in the next 6 months." Or if it's a new website it could be: "Get 100 daily visitors in the next 6 months" . This way you can measure the success of the project and the client can see if it was worth it.

Define the scope of the project

This one is important. Most of the time when a client says "I need a website" it might sound to you that he needs a basic HTML/React page. But sometimes clients have interesting demands and they think it is just the snip of a finger to implement. So it is important to define the scope of the project. This will help you and the client to understand what is included in the project and what is not. It will also help you to estimate the time and cost of the project. And don't be shy to say that any changes in the scope will cost extra and to stand by it. A web project no matter how small will evolve during the development phase. So it is important to have a clear scope and to be able to adjust the scope and also the pricing.

Ask for budget and be honest

Before starting with scope of the project make sure to ask the client for a budget. This will help you to understand what the client is willing to spend on the project and to adjust the scope of the project accordingly. If the client is not willing to say what his budget is then know that this is a red flag! They might try to get the most out of you for the least amount of money. If you can afford it don't take the project or at least say that you typically work with clients that have a clear budget and you made bad experiences with clients that didn't have a clear budget range. To prime the client you can also say that you typically work with clients that have a budget of at least $5000 or whatever your minimum is. This will help you to filter out clients that are not willing to pay for your services. And let me give you one secret: If you think that the client's money is better spend on something else than a website then tell them. They will appreciate your honesty and might come back to you when they have a project that is worth it. Its better to sleep well than to have a few extra bucks in your pocket! I promise you that.

Don't forget the contract

This is important. No matter how close you are to the client or how trustworthy they seem to be, always have a contract. This will help you to protect yourself and your business in case something goes wrong. The written contract should include a basic terms of service for IT, the scope of the project, the timeline, the cost, the payment terms, and the success criteria.

Work iteratively, don't waterfall

The client told you his goals and you defined the scope, then you say to the client "I'll be back in 4 weeks". And let's say you design and develop the best looking piece of website there is. And you show it to your clients with a big smile on your face and all you here is: "Well, I'm not so sure about the colors and this layout. Let's make a website like <some generic competitor>". It might be the best website there is and the best thing that could have happened to the client. But the one thing that pays the bills are happy clients. Been there, done that. Not fun. So work iteratively in design and development. Make sure to always validate big ideas. There are great design and development tools outthere that let you invite additional users to give feedback on design or even websites. Check out (Ruttl)[ruttl.com] for website comments Figma's comment feature obviously for feedback on designs.

Bugs, gotta catch 'em all

With every line of code you write, you also introduce bugs 🪲. So it is important to test your website at least manually before showing it to clients. Clients are not your free testers! Also make sure to deploy some time ahead of presentations and test the website on different devices and browsers.

Don't make free changes

After deciding on a final version of the website, make sure to communicate that further changes will cost extra. This will make the client think twice before asking for changes and will help you to protect your time and money. Otherwise you might end up in a never ending loop of changes that neither you nor the client will be happy with.

Make sure to ask for feedback and recommendations

Don't be shy about what brings you forward. After a successful delivery ask your clients for feedback and whether they know someone that too would need a website.

Conclusion

Altough starting a freelance web project in 2024 is now super easy thanks to all the tools and frameworks out there, working with different clients was and will always be a challenge. Learn from mistakes and don't be afraid to turn down projects.