The PVBid Cost Code Structure - PVBid

What were we thinking?!

Job costing or cost codes are a super personal / company specific aspect of solar.  Each company does and thinks about their costs differently and so tailoring your codes to match your company is crucial.  Just like the challenges you have had, PVBid has put together a code structure that we feel meets the level of detail of all of our customers.  We used a progressively more detailed concept that can get into the weeds in some cases but still be kept at a high level for those who have just a few codes.

Another important feature we added to our codes is a simple code to make it easy to understand what you are looking at.  I wouldn’t expect anyone to know all the codes by heart but you can always come here and look up what they might be.  The top 2 digits are easy.  We used L for labor.  Our structure has 4 characters, a dash, and then 4 more characters.  So, for instance let’s use this scenario:
the labor for a subcontractor to install the DC conduit between a combiner box and an inverter
is coded as L407-3005. Yeah, easy!  We’ll come back to this as we learn more.

So, how did we lay out the codes?  We started with the big picture and drilled down. Let’s start at the top and first character which is the only letter in our system…


Job Codes – Level 1

  • (L) Labor – This is all labor and includes internal and subcontractor labor. This includes all activities that require time related to the PV System including engineering, project management, installation of the racking system, waterproofing.  Basically, labor.
  • (M) Materials – This is all the materials related to the PV System including conduit, wire, modules, switchgear, foundations.  Basically, the parts for the system.
  • (E) Equipment – Anything rented, purchased, or used that isn’t a material.  Think of this as the scissor lift, drill bit, chain saw, and dump truck category.
  • (O) Other – Though I HATE having an other category, this is intended for anything that can’t be physically assigned to the project. Physically is the important feature here.  Permits, fees, warranties (if not part of the purchase order for something like an inverter).  We did our best to keep this absolutely minimized.

OK, now that we have the big picture categories, each of those break into four sub categories defining who is responsible and where in the process the item falls…


Job Codes – Level 2

  • (1) Indirect – Internal – This is anything that isn’t part of the actual system in place at the end of construction.  It’s also internal, meaning YOUR company.  So things like initial project management, title investigations, and rent.  This does not include things like permit fees.
  • (2) Indirect – Subcontractor – This is the same as above but it’s provided by a subcontractor.  If your company is a developer and you hire out to EPCs, then the EPC’s rent would be included in this.
  • (3) Direct – Internal – If it’s required to install the system and provided by your company, it’s direct and internal.  Basically, once the boots hit the ground and everything after that up-to-and-including commissioning will be in this category.
  • (4) Direct – Subcontractor – I bet you’re catching on now.  This is the same as above but for a subcontractor.  And, when we say subcontractor, we mean a company that is subcontracted to your company because ultimately, PVBid is generating the contract amount you will be charging your customer.

With the easy stuff out of the way, it’s time to dive into greater detail.  You’ll note that some numbers are missing here.  We actually saved room for a few things as we went.  This section is 2 characters because we have more than 10 items.


Job Codes – Level 3

  • (01) Admin / Controls
  • (02) Pre-construction – This is work done before construction.  Design work, project management, site surveys, and things like that.
  • (04) Mobilization – Getting the project started such as lifting equipment to site, renting the equipment, ordering materials, organizing materials before they go to the site, or even organizing them on site.
  • (05) Civil – This is ground related work that includes landscaping, tree removal, digging, clearing, grubbing, etc.
  • (06) Mechanical – That’s the racking and everything racking that isn’t electrical.  Solar canopies through to ballast blocks.  Don’t forget, we break this stuff out by labor and materials so L406 would be the category for the solar canopy subcontractor labor.
  • (07) PV electrical – We break out the electrical components for each project based on what it really relates to.  So PV electrical is anything electrical from the module through and including the output from the inverter (conductors between the inverter and the panelboard/next thing).
  • (08) EVSE chargers – Any electrical from the EV charger through to and including the conductors from the charging station to the panelboard / next thing.
  • (09) Energy storage – Any electrical from the batteries through to and including the conductors from the ES inverter to the panelboard / next thing.
  • (10) LVAC electrical – Low voltage electrical makes up a big portion of the project which is why we gave it a category but kept it separate from the PV electrical.  This is all low voltage not included in the categories above.
  • (11) MVAC electrical – Some projects have medium voltage.  That’s this section.  For instance, if you have a transformer that steps from MV to LV, the transformer and LV conductors will be in the LVAC electrical category while the MV conductors for the transformer will be in the MVAC electrical cateogry.
  • (13) Freight – Typically only found in the Other major category, Freight is just that, the cost of getting materials to the site.
  • (14) Post construction – Think commissioning, punch lists, closeout project management, those things still needing to be done even though the project pretty much done.
  • (15) General overhead – This is your rent, insurance, overhead, things that must be accounted in any project, just not really directly
  • (16) Contingency / Reserve – I think contingency speaks for itself.

Wow, great!  We made it through that section too.  Nice work meeting me here.  The rest of the codes are pretty self explanatory so I’ll let you read through them on your own.


Bringing it back to the begining

Let’s go back to the original example we were using now.  Our example was for the labor for a subcontractor to install the DC conduit between a combiner box and an inverter
That resulted in a code: L407-3005.  Let’s digest that below