• Skip to primary navigation
  • Skip to main content
  • Skip to footer
Home OwnersTradesmenMy Account/Login
Price Doctor logo

Price Doctor

Price Doctor logo
  • Price Doctor logo
  • Get Started
    • Tradesmen
    • Home Owners
  • Pricing
    • Pricing for Tradesmen
    • Pricing for Home Owners
    • Our Pricing Service
  • Resources
    • Trade Resources
  • About Us
    • Contact Us
    • News
    • About Price Doctor
    • Testimonials
  • Contact Us
  • Help
    • Tradesman Help
    • Homeowner Help
    • Pricing Service Help
    • Resetting Passwords
    • Account Setup

How to Calculate Labour Costs in Construction (UK Guide)

What Are Labour Costs in Construction?

Labour costs include all expenses related to workers on a project, including wages, subcontractor fees, employer contributions, and indirect time such as supervision and administration.

Labour is one of the biggest costs in any construction project—and one of the easiest to get wrong. Underestimate it, and your profits disappear. Overestimate it, and you risk losing the job altogether.

This guide walks you through exactly how to calculate labour costs in UK construction so you can price jobs accurately and protect your margins.

Labour Cost = (Hourly Rate × Total Hours) + Employer Costs + Overheads + Profit

 

Why are your Labour Rates Important for calculating Project Costs?

Very broadly you will expect the costs for a construction project to break down into in the region of 30-40% labour and similar sort of percentages for the materials. If used plant (including skips, scaffold site security) can vary wildly but typically in the 5-10% range. Overheads will probably in the region of 10% but this will depend on how the business is run and of course, you will want to make a profit too. The profit should reflect the risk taken, so 20-30% is not unusual.

As you can see that Labour is a significant proportion of the true costs, before a markup percentage is added for overheads and profits, which will compound any errors made in your labour calculations. Materials costs are relatively easily to calculate, so long as you don’t forget to include any additional charges such as delivery, storage or restocking costs. Sadly, Labour costs can be full of pitfalls and using numbers from AI Chatbots can sometimes drop you right into them!

Find out how to avoid the pitfalls with calculating your labour costs here.

 

What Are Labour Costs in Construction?

Labour costs include everything you pay for the people working on a project—not just wages.

This includes:

  • Basic pay (hourly or daily rates)
  • Employer costs (NI, pensions)
  • Subcontractor fees
  • Overtime and bonuses
  • Travel time and expenses

Also remember that you might have additional labour costs for people who facilitate the job but are not actually billed out for that work, such as office and admin staff.

Calculating labour costs

 

Step-by-Step: How to Calculate Labour Costs

Generally, there will be two ‘kinds’ of labour rates – directly employed staff and subcontractors. Let’s start with subcontractors as they are typically easier as tend to give you their rate, so there’s not much to calculate. They turn up and do the job, and you have no responsibility for their equipment, van, insurances etc so you probably don’t have any significant additional costs here. Although don’t forget that will be a cost to organising them, scheduling them and ensuring they have materials etc.

Calculating Subcontractors Labour Costs:

Subbies typically charge:

  • Day rate: £150–£300+ depending on trade, experience and level of supervision they require.
  • Specialist trades: often higher

Always factor in:

  • Reliability
  • Speed
  • Quality

Cheaper isn’t always better – someone you can trust to get the job done properly and on time certainly warrants paying a premium for.

The other part of the equation is how much time the work will take. If you have expected it’ll take 2 days at £300 per day, and it actually takes them 4 you’ll be out of pocket by £600. Your subbie is unlikely to want to work for free for two days, so this is a very important aspect to factor in. We’ll touch on this in more detail below.

 

Work Out Your Hourly Labour Rate for Employed Staff

Step 1: Find the wage costs:

It is important to include all the wage costs:

  • Base wage
  • Bonuses
  • National Insurance (typically 15%)
  • Pension contributions (minimum employer contribution is 3% for those that opt in)

Over and above the base wages costs it is safe to add 20% for tax, national insurance and pensions which are all costs which you cannot avoid. This is what we will call employer costs. This can include your training costs, PPE etc – anything which you have to pay to get that tradesperson standing there on site every Monday morning (excluding their holidays etc).

Labour and material cost calculation

Example Calculation:

  • Salary: £35,000 (including any bonuses you might pay)
  • Employer costs: £7,000 (20% of £35,000)
  • Total: £42,000

Step 2: Find the worked time:

This is the hours or days worked. We typically use a day at Price Doctor as this is an easier unit of measurement which everyone can picture – if we say people work 220 days per year feels more understandable than 1,760 hours per year. It is easy to work one from the other though – divide your days by 8 hours (or whatever your typically day is) to get the total number of hours.

**Warning** Ask an AI chatbot what your working days or hours in a year are and it is almost certainly going to overestimate it! This means you’ll be under-pricing yourself and your team.

This is the calculation for construction days work which you can use to accurately determine your day rate:

  • 365 days per year (assuming not a Leap Year)
  • Less your weekend days (assuming you don’t work them – you work a Monday to Friday only) – 52 weeks per year with 2 weekend days = 104
  • Less the 8 bank holidays (again we’re assuming you’re not planning to work these)
  • Less holidays – let’s take the statutory amount which is 28 including bank holidays which we have already accounted for, so we minus 20 days here.

This is a total of approximately 230

But, this is not the true figure you can use to calculate your costs as there is additional time which you and your staff have to be paid for but are not working on productive billable jobs. This will include:

  • Training – Asbestos, 1st Aid, working from heights etc. There is a lot of mandatory training required
  • Sickness and compassionate leave – this will depend on your policies, but there is still lost time and a cost even if you only pay the statutory minimums.
  • Staff welfare time – staff reviews, company meetings, social engagements, toolbox talks.
  • Dead time – weather delays, scheduling issues such when you cannot start a project or trade as there have been delays with another project. Unforeseen issues which stop projects and you need time to redeploy staff and yourself elsewhere.
  • Marketing and sales time; sales visits, surveys and time spent pricing and creating estimates. You might account for this elsewhere in your calculations but don’t forget to add it somewhere.

Every firm is different, so you have to make an estimate for what you think is needed. It is very realistic to take 10 days per person so account for this.

This brings your annual total working days to 220.

Step 3: Calculate the Rate:

Simply divide the total labour costs by the working time.

Sample Calculation:

Back to our example, divide £42,000 (total wage cost) by 220 days = £190 per day.

Calculating labour costs

 

Estimate Total Hours Required

Once you have the cost of the time the next stage is to work out how long the work will or should take. Most people will have a good idea of how long most jobs in their trade will take, and will quickly get a feel for what their people are capable of.

If you are taking on something unusual or need to get a better estimate of the expected time for projects there are a number of methods which might be helpful. We cover this in more detail in another guide, but here’s some quick tips:

  1. Break the project into tasks and the assign realistic hours to each:
  • Groundworks
  • Structural work
  • Finishing
  • Then Add 10–20% contingency for delays.
  1. Use data from past projects
  • How long did similar projects or tasks take?
  • Ask your team how long they expect to take.
    1. Use production/productivity rates
  • There are estimates of what output can be achieved in a given timescale, usually a day, such as number of bricks layed etc.
  • Remember to account for complexities and variations from the “standard” which most production rates are based on
  • A simple web search will find the production rates for most trades or for a comprehensive list for all trades, the Royal Institution of Chartered Surveyors (RICS) publish a book which is regularly updated called SPON’S
    1. Use software – like Price Doctor – which will have all the production rates built in and will be used in the calculations

Pro Tip: Always add a buffer (10–20% depending on complexity and type of work) for:

  • Delays
  • Weather
  • Unexpected issues

It seems a lot to add but you are never going to get a clear run at the any task – there are always interruptions, even it is just chatting to the customer.

 

Complete the Estimate/Quote

  1. Multiply Hours by Rate

Example:

  • 5 days × £190 per day = £950
  1. Add Indirect Labour Costs (if not already included)

Include these and any others:

  • Site management
  • Travel time
  • Admin work
  1. Add Profit Margin

Typical UK margins:

  • Small jobs: 20–45%
  • Larger jobs: 15–35%

It is vital you make a profit if you want to stay in business, and your customers should understand this too. The margin should reflect the risk that you will need to take to get the project completed, balanced with other factors such as market rates and complexity.

 

Top Tips for calculating Labour Costs:

Here are a few tips and takeaways to remember:

Common Labour Costing Mistakes

  • Underestimating time required
  • Ignoring employer costs
  • Not including downtime
  • Guessing instead of calculating
  • Under-pricing to win work

How to Calculate Labour Costs Faster

Using software allows you to:

  • Save labour rate templates Pre-set labour rates
  • Automate calculations
  • Reduce costly errors
  • Save templates for repeat jobs
  • Calculate instantly

That’s where Price Doctor helps builders price jobs faster and more accurately.

 

Final Thoughts

Accurate labour costing is the difference between a profitable job and a costly mistake.

If you want to:

  • Save time
  • Improve accuracy
  • Win more work

Start using a smarter approach with Price Doctor.

Footer

  • Home Owners
  • Tradesmen
  • Home Pricing
  • Trades Pricing
  • Contact Us
  • About Us
  • Login
  • Cookie Info
  • Handymen
  • Builders
  • Decorators
  • Electricians
  • Carpenters
  • Landscapers
  • Painters
  • Plumbers
  • Roofers
Price Doctor

A DIY Doctor solution

DIY Doctor company logo

Federation of Master Builders

© Price Doctor 2026 All Rights Reserved

Privacy Policy | Terms and Conditions

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit "Cookie Settings" to provide a controlled consent.
Cookie SettingsAccept All
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
cookielawinfo-checkbox-advertisement1 yearThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Advertisement".
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
JSESSIONIDsessionUsed by sites written in JSP. General purpose platform session cookies that are used to maintain users' state across page requests.
OptanonConsent1 yearThis cookie is set by OneTrust cookie consent solution. The cookies is used for storing the information about the users consent based on which the cookies will be set on the browser.
PHPSESSIDsessionThis cookie is native to PHP applications. The cookie is used to store and identify a users' unique session ID for the purpose of managing user session on the website. The cookie is a session cookies and is deleted when all the browser windows are closed.
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
_GRECAPTCHA5 months 27 daysThis cookie is set by Google. In addition to certain standard Google cookies, reCAPTCHA sets a necessary cookie (_GRECAPTCHA) when executed for the purpose of providing its risk analysis.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
CookieDurationDescription
__cf_bm30 minutesThis cookie is set by CloudFlare. The cookie is used to support Cloudflare Bot Management.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
CookieDurationDescription
GCLB12 hoursThis cookie is known as Google Cloud Load Balancer set by the provider Google. This cookie is used for external HTTPS load balancing of the cloud infrastructure with Google.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
CookieDurationDescription
CONSENT16 years 4 months 13 hours 28 minutesThese cookies are set via embedded youtube-videos. They register anonymous statistical data on for example how many times the video is displayed and what settings are used for playback.No sensitive data is collected unless you log in to your google account, in that case your choices are linked with your account, for example if you click “like” on a video.
_ga2 yearsThis cookie is installed by Google Analytics. The cookie is used to calculate visitor, session, campaign data and keep track of site usage for the site's analytics report. The cookies store information anonymously and assign a randomly generated number to identify unique visitors.
_gat_gtag_UA_77943302_11 minuteThis cookie is set by Google and is used to distinguish users.
_gid1 dayThis cookie is installed by Google Analytics. The cookie is used to store information of how visitors use a website and helps in creating an analytics report of how the website is doing. The data collected including the number visitors, the source where they have come from, and the pages visted in an anonymous form.
_hjAbsoluteSessionInProgress30 minutesNo description available.
_hjFirstSeen30 minutesThis is set by Hotjar to identify a new user’s first session. It stores a true/false value, indicating whether this was the first time Hotjar saw this user. It is used by Recording filters to identify new user sessions.
_hjid1 yearThis cookie is set by Hotjar. This cookie is set when the customer first lands on a page with the Hotjar script. It is used to persist the random user ID, unique to that site on the browser. This ensures that behavior in subsequent visits to the same site will be attributed to the same user ID.
_hjIncludedInPageviewSample2 minutesNo description available.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
CookieDurationDescription
fr3 monthsThe cookie is set by Facebook to show relevant advertisments to the users and measure and improve the advertisements. The cookie also tracks the behavior of the user across the web on sites that have Facebook pixel or Facebook social plugin.
IDE1 year 24 daysUsed by Google DoubleClick and stores information about how the user uses the website and any other advertisement before visiting the website. This is used to present users with ads that are relevant to them according to the user profile.
test_cookie15 minutesThis cookie is set by doubleclick.net. The purpose of the cookie is to determine if the user's browser supports cookies.
VISITOR_INFO1_LIVE5 months 27 daysThis cookie is set by Youtube. Used to track the information of the embedded YouTube videos on a website.
YSCsessionThis cookies is set by Youtube and is used to track the views of embedded videos.
yt-remote-connected-devicesneverThese cookies are set via embedded youtube-videos.
yt-remote-device-idneverThese cookies are set via embedded youtube-videos.
_fbp3 monthsThis cookie is set by Facebook to deliver advertisement when they are on Facebook or a digital platform powered by Facebook advertising after visiting this website.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
CookieDurationDescription
InfusionsoftTrackingCookie1 yearNo description available.
SAVE & ACCEPT
Powered by CookieYes Logo