Work sample 12 / 17Pricebook and margin

Pricebook re-costing for an electrical contractor, after three supplier price rises

How I'd approach a Melbourne electrical contractor whose simPRO pricebook was last updated in January, while three supplier price rises since then have taken margin off fixed-price jobs that nobody noticed.

Area
Pricebook and margin
Tools
simPRO · Excel · Xero
Typical scope
US$1,200–2,000
Timeline
About 4 weeks, 4 milestones

Work sample: realistic data, not a past client job. Amounts are in AUD and GST is 10%.

01The problem

An electrical contractor sells switchboards, circuit protection, cable and lighting. Its three main suppliers raised prices in February, May and August 2026. The simPRO pricebook still holds the January cost and sell prices, so every quote and every fixed-price job is built on costs that are out of date.

Owners usually notice it like this:

  1. Jobs that looked fine at quote stage finish with a thinner margin than expected
  2. Nobody can say what a part costs today without ringing the supplier
  3. Supplier price files arrive by email and are never loaded
  4. The same part is sold at the same price whether it cost $4 or $5 to buy

In this sample, the pricebook has 1,400 lines and was last updated in January. Against current supplier prices, none of the 1,383 active lines had a cost within 1% of the supplier's file, and 1,382 lines sat more than one percentage point below their group's target margin. The last six months of billing (April to September 2026) is 11,000 lines, $1,835,368 ex GST, billed at a margin of 30.9%.

02The outcome

This is what the setup does and delivers:

  1. Every pricebook line compared with the current supplier price, with a clear status: current, superseded or discontinued
  2. A short set of cost and margin rules by group, so a new sell price is calculated the same way every time
  3. A re-costed import file that updates existing simPRO items by part number only, with a backup of the catalogue exported first
  4. An approval list for the large changes, with the decision and the reason for each recorded
  5. A report showing what the last six months of billing would have earned at the new prices
  6. A repeatable quarterly routine, so the next price rise takes an hour rather than a project
Data flowHow the work flows, from the first record to sign-off
01SUPPLIERS3 price files02RULEScost + margin03APPROVALlarge changes04IMPORTinto simPRO05CHECKXero bills06REPORTmargin impact6 STAGES · ONE PASS FROM FIRST RECORD TO SIGN-OFF01SUPPLIERS3 price files02RULEScost + margin03APPROVALlarge changes04IMPORTinto simPRO05CHECKXero bills06REPORTmargin impact

03Scope

Exhibit AScope
DeliverableWhat's includedNotes
Pricebook and supplier file auditPricebook exported from simPRO; the three supplier price files matched line by line; superseded, discontinued and unmatched parts listedUS$300 health check, and the findings are yours to keep. If the findings change the plan, I re-quote before M2
Cost and margin rulesCost basis, target margin by group, competitive-item rule, rounding, approval thresholdsAgreed with the owner in M1
Re-costed import fileImport file with current cost and new sell price for every active lineBuilt in Excel. Imported with Update Only, matched on part number
Margin impact on the last 6 monthsBilled lines re-priced at the new sell prices, by group and by monthAn estimate of what could have been earned. Fixed-price jobs already accepted do not change
Approval list for big changesLines with a large change listed with proposed price, decision and reasonThe owner decides. Nothing large is imported without a recorded decision
Quarterly update SOPOne-page routine for the next price file, with the check stepsIncludes the Xero bill price cross-check
Not includedSupplier negotiations, new supplier set-up, or rebuilding the catalogue structureQuoted separately if wanted

Not included: payroll, STP or BAS lodgement.

Exhibit BSample data
ItemVolume
Pricebook lines1,400 in 9 groups
Supplier price files3 (676 + 385 + 382 rows)
Lines superseded by the supplier31
Lines discontinued by the supplier17
Billed lines, April to September 202611,000 on 1,000 jobs ($1,835,368 ex GST)
Xero bill lines cross-checked60 on 13 bills

04Walkthrough

4.1 The three price rises

Each supplier's rises hit some groups harder than others. Cable moved the most. The table shows the rise in each round, the combined rise, the target margin for the group, and the average margin the old sell price now earns at today's cost:

GroupLinesFebMayAugCombinedTarget marginAvg margin at old sell
Switchboards and enclosures1203.5%3.0%2.5%9.3%30%21.6%
Circuit protection3002.5%3.0%2.0%7.7%33%26.4%
Cable and conduit2405.5%4.0%6.0%16.3%30%17.5%
Lighting, interior2401.0%1.5%0.5%3.0%40%36.8%
Lighting, exterior and emergency1301.5%1.5%1.0%4.1%38%34.4%
Switches and power points1302.0%2.5%2.0%6.6%42%36.8%
Smoke alarms and safety601.5%1.5%1.0%4.1%40%36.3%
Data and comms802.0%2.5%3.0%7.7%38%32.7%
Fixings and consumables1003.0%3.0%3.0%9.3%45%38.7%

4.2 The three supplier files

SupplierCoversRows in fileNotes
Electrical wholesaler ASwitchboards, circuit protection, cable and conduit676Cost price ex GST, one row per part
Lighting supplier BInterior, exterior and emergency lighting385Cost price ex GST, one row per part
Accessories and data supplier CSwitches, smoke alarms, data, fixings382Cost price ex GST, one row per part

Each file is matched on part number to the pricebook:

ResultLines
Matched on part number1,352
Supplier has renumbered the part (matched on description, existing part number kept)31
Not in the current file (discontinued)17
Pricebook lines1,400
Rows in the files that are not in the pricebook (left out of the import)60

For renumbered parts the supplier's new number is recorded in a notes column, and the import uses the part number that simPRO already holds so that Update Only matches the existing item.

4.3 Cost and margin rules

RuleSetting
Cost basisSupplier's current price file, ex GST
Target marginMargin on sell price, set per group (table below)
Sell priceCost divided by one minus the margin, rounded up to the next 5 cents
Competitive itemsItems the owner has agreed to hold at a lower margin are flagged, and keep that margin with a reason on the line
Within rulesA sell price change of 10% or less, and no more than $100 on one unit, is applied without a separate approval
ApprovalA larger change goes on the approval list for the owner to approve, cap or hold
Discontinued partsNot re-costed. Archived with the reason
GSTPrices are ex GST. GST is added at 10% on the invoice
GroupTarget marginCompetitive linesSupplier
Switchboards and enclosures30%30Electrical wholesaler A
Circuit protection33%69Electrical wholesaler A
Cable and conduit30%39Electrical wholesaler A
Lighting, interior40%45Lighting supplier B
Lighting, exterior and emergency38%19Lighting supplier B
Switches and power points42%26Accessories and data supplier C
Smoke alarms and safety40%12Accessories and data supplier C
Data and comms38%9Accessories and data supplier C
Fixings and consumables45%21Accessories and data supplier C

4.4 Example lines

Part numberDescriptionOld costCurrent costOld sellMargin at old sellNew sellNew marginNote
EWA-1014Switchboard enclosure 48 pole, flush296.80324.08$424.0023.6%$463.0030.0%On target
EWA-1429Contactor 4P 63A, 240V coil, Range C241.50260.79$360.4527.6%$389.2533.0%On target
EWA-2933Single core cable 50mm², blue, 100m coil1380.001596.87$1,971.4519.0%$2,281.2530.0%On target
LSB-1179Pendant fitting, linear, white, Range D162.00166.06$270.0038.5%$276.8040.0%On target
SAC-1202Dimmer 630W universal, white, Range C59.8064.18$103.1537.8%$110.7042.0%On target
SAC-2038Brass cable gland M25, 10 pack, Range A32.3035.20$58.7540.1%$64.0045.0%On target
EWA-1250Neutral link 12 way, Range D12.1513.42$17.4022.9%$19.1529.9%Owner cap this quarter, balance next quarter
EWA-1197Busbar kit 3P 250A, Range D226.80246.58$298.4517.4%$324.4524.0%Competitive item, agreed margin 24%
EWA-1020Switchboard enclosure 36 pole, IP65 weatherproof285.00313.92$360.8013.0%$360.8013.0%Fixed-price job held to 31 Dec 2026

4.5 The approval list

279 lines changed by more than the rules allow, and went to the owner. 1,104 lines were within the rules and 17 are archived.

DecisionLines
Within rules (no separate approval)1,104
Approved as proposed215
Approved, capped at +10%40
Held at old sell price24
Archived (discontinued)17
Total1,400

Largest proposed changes (per unit):

Part numberDescriptionOld sellProposedChangeDecisionFinal sell
EWA-2873Single core cable 50mm², black, 100m coil$1,971.45$2,305.00+16.9%Approved, capped at +10%$2,168.60
EWA-2812Single core cable 50mm², white, 100m coil$1,971.45$2,288.65+16.1%Approved as proposed$2,288.65
EWA-2846Single core cable 50mm², red, 100m coil$1,840.00$2,153.65+17.0%Approved as proposed$2,153.65
EWA-2933Single core cable 50mm², blue, 100m coil$1,971.45$2,281.25+15.7%Approved as proposed$2,281.25
EWA-2584Single core cable 50mm², green/yellow, 100m coil$1,971.45$2,270.10+15.1%Approved as proposed$2,270.10
EWA-2644Single core cable 35mm², white, 100m coil$1,442.90$1,688.40+17.0%Approved as proposed$1,688.40
EWA-2501Single core cable 35mm², blue, 100m coil$1,442.90$1,687.40+16.9%Held at old sell$1,442.90
EWA-2957Single core cable 35mm², red, 100m coil$1,442.90$1,686.85+16.9%Approved as proposed$1,686.85

A capped line is brought up to the full price at the next quarterly update. A held line is listed with a review date, so it does not stay low by accident.

4.6 The import

  1. Export the existing catalogue from simPRO (Export > Catalogue) and keep the file as the backup
  2. Run a trial of 20 lines through Utilities > Import, with Update Only selected, and check the result in simPRO against the file
  3. Import the rest. Update Only matches the part number and updates existing items. Rows that do not match are ignored, so nothing new is created
  4. Compare the new catalogue export with the import file and record the numbers

The import file has the part number, description, cost price and sell price for each active line. If the business prefers simPRO to calculate sell from a markup, the file carries the markup instead, and the trial import confirms which columns the import accepts on that setup. In this sample the file has 1,383 rows, one for every approved active line. The 17 archived lines are not in it.

4.7 Margin impact on the last six months

The 11,000 billed lines from April to September were billed at the old sell prices. Each line's cost is the supplier price at the date of the job, so the cost rises step up in May and August. The "new" columns show the same lines at the re-costed sell prices:

GroupLinesBilled (ex GST)CostMargin billedAt new pricesMargin at new pricesDifference
Switchboards and enclosures913$97,863$74,75723.6%$106,46829.8%$8,605
Circuit protection2,968$299,317$215,50028.0%$322,52633.2%$23,210
Cable and conduit1,372$491,436$386,20121.4%$563,64631.5%$72,210
Lighting, interior1,126$367,513$229,61937.5%$378,33639.3%$10,823
Lighting, exterior and emergency416$105,273$68,32635.1%$109,80437.8%$4,531
Switches and power points1,421$163,969$101,33338.2%$174,78042.0%$10,811
Smoke alarms and safety903$153,191$96,77536.8%$159,36139.3%$6,170
Data and comms313$44,128$28,80434.7%$47,49739.4%$3,369
Fixings and consumables1,568$112,678$67,14140.4%$122,83245.3%$10,154
Total11,000$1,835,368$1,268,45730.9%$1,985,25036.1%$149,882

By month:

MonthLinesBilled (ex GST)Margin billedAt new pricesMargin at new prices
Apr 20261,958$319,97532.9%$346,74238.1%
May 20261,763$290,80532.1%$312,74436.9%
Jun 20261,606$261,15530.6%$284,16036.2%
Jul 20261,848$313,74531.4%$339,63036.6%
Aug 20261,996$354,17729.1%$382,06834.3%
Sep 20261,829$295,51129.5%$319,90634.8%

This is an estimate of what the re-costed prices would have earned. Jobs quoted at a fixed price before the rises cannot be re-priced, so the real recovery is spread over new quotes from here.

One job, before and after: Switchboard upgrade, Moonee Ponds (job EJ4049).

Part numberDescriptionQtyOld sellBilledNew sellAt new pricesCost
EWA-1283Weatherproof meter box IP56, 1 phase, Range B1$59.50$59.50$64.60$64.60$45.25
SAC-1395Smoke alarm standalone 10-year lithium, Range A5$31.20$156.00$32.50$162.50$95.05
EWA-1479MCB 1P 6A, B-curve 6kA, Range B3$7.45$22.35$7.95$23.85$15.87
SAC-1561Photoelectric smoke alarm 240V interconnectable, 2 pack, Range C3$153.35$460.05$157.95$473.85$277.35
EWA-1164Earth bar 6 way, Range B3$8.60$25.80$9.40$28.20$18.60
EWA-1631Motor protection circuit breaker 4A, Range B1$98.55$98.55$106.85$106.85$68.14
EWA-2854Cable ladder 150mm x 3m, galvanised, Range B3$81.75$245.25$95.85$287.55$182.55
EWA-1030Weatherproof meter box IP56, 1 phase, Range C1$67.50$67.50$73.35$73.35$52.08
Total ex GST$1,135.00$1,220.75$754.89
GST 10%$113.50$122.08
Total inc GST$1,248.50$1,342.83

4.8 Cross-check against Xero bills

Prices in the pricebook are checked against what the suppliers actually charged. A Xero export of September's bill lines is matched by part number to the new pricebook cost, and any line more than 1% away is raised with the supplier:

BillSupplierDateLinesEx GSTGSTTotalLines to query
A-81000Electrical wholesaler A04 Sep 20265$822.30$82.23$904.530
A-81013Electrical wholesaler A14 Sep 20265$393.24$39.32$432.560
A-81026Electrical wholesaler A18 Sep 20265$196.05$19.61$215.661
A-81039Electrical wholesaler A23 Sep 20265$1,086.08$108.61$1,194.690
A-81052Electrical wholesaler A29 Sep 20265$608.35$60.84$669.190
A-81065Electrical wholesaler A30 Sep 20261$459.54$45.95$505.490
B-81000Lighting supplier B10 Sep 20265$1,057.63$105.76$1,163.391
B-81013Lighting supplier B28 Sep 20264$1,125.71$112.57$1,238.280
C-81000Accessories and data supplier C09 Sep 20265$333.75$33.38$367.130
C-81013Accessories and data supplier C18 Sep 20265$373.14$37.31$410.451
C-81026Accessories and data supplier C23 Sep 20265$304.47$30.45$334.920
C-81039Accessories and data supplier C25 Sep 20265$143.24$14.32$157.560
C-81052Accessories and data supplier C30 Sep 20265$282.88$28.29$311.170
Total60$7,186.38$718.64$7,905.023

57 of 60 lines were within 1% of the new cost. 3 were above it, and went back to the supplier. The detail is in xero_bill_crosscheck.csv.

4.9 The quarterly routine

  1. Ask each supplier for a current price file, or download it on the first Monday of the quarter
  2. Export the simPRO catalogue as a backup
  3. Paste the files into the workbook, which matches them on part number and applies the rules
  4. Review the approval list and record each decision
  5. Run a trial import of 20 lines, then the full import with Update Only
  6. Cross-check a sample of recent Xero bill lines against the new cost
  7. Save the workbook, the import file and the approval decisions together

05Checks

Exhibit CChecks on the sample data
CheckBeforeAfterStatus
Every line has a current cost0 of 1,383 within 1% of the supplier file1,383 of 1,383 active lines (17 archived with a reason)PASS
Sell price meets target margin or has a reason1,382 of 1,383 more than 1 point below target margin1,066 at or above target, 317 below target with a recorded reason (255 competitive, 38 capped, 24 held), 0 withoutPASS
Import count = approved countNot tracked1,383 rows in the import file, 1,383 lines approvedPASS
Xero bill prices agree with the new costNot compared57 of 60 within 1%, 3 raised with the supplierPASS

06Milestones

Exhibit DMilestones
MilestoneWhat happensRough durationWhat is signed offShare
M1 · Rules agreedHealth check (US$300), pricebook and files audited, margin rules, competitive items and approval thresholds agreedAbout 1 weekAudit findings, rules and fixed quote25%
M2 · Re-costed fileSupplier files matched, sell prices calculated, margin impact on the last six months, approval list builtAbout 1.5 weeksThe re-costed workbook and the approval list40%
M3 · Approval and importOwner decisions recorded, catalogue backed up, trial import, full import and count checkAbout 1 weekImport count equals approved count25%
M4 · SOPQuarterly routine written, one test run on a small price file, walkthrough recordingAbout 0.5 weekOffice can run the next update10%

The fixed quote follows the US$300 health check, so the price is based on what is actually in your files. If the health check changes the plan, I re-quote before M2.

Typical scope for this kind of project: US$1,200–2,000.

About 4 weeks, 4 milestones. Your software subscriptions are billed to you by the vendors.

07Handover

  1. The re-costing workbook (Excel) with the rules and the group margins
  2. The import file and the approved decision list
  3. A backup of the catalogue before the import
  4. The margin impact report
  5. A one-page quarterly SOP
  6. A recorded walkthrough
  7. Prepared by Manaz Afzal

08Files

A screen from the sample workbook, then every file in the work sample. Select the image to open it full size.

Summary tab of the workbook: the sample size and the figures in this walkthrough, each tied out by a live formula
Exhibit ESummary tab of the workbook: the sample size and the figures in this walkthrough, each tied out by a live formula

pricebook-recosting.xlsx › Summary

FilesDownload the work sample
FileWhat it isSize
pricebook-recosting.xlsxWorkbook with 14 tabs (Read me, Summary, Pricebook, Approval list, Import file, Billed lines Apr-Sep, Xero cross-check, Xero bills, Margin by group, Margin by month, Decisions, Supplier file A, Supplier file B, Supplier file C). The Summary tab lines up every figure on this page with a live formula1.5 MB
pricebook-recosting.pdfThis work sample as an A4 PDF (8 pages)354.8 KB
pricebook_before_after.csv1,400 pricebook lines with old and new cost, old and new sell, margin and reason253.2 KB
supplier_price_file_A.csvThe three supplier price files (A)55.9 KB
supplier_price_file_B.csvThe three supplier price files (B)35.7 KB
supplier_price_file_C.csvThe three supplier price files (C)33.5 KB
simpro_catalogue_import.csv1,383 rows for the Update Only import87.6 KB
approval_list.csv279 lines that went to the owner, with the decision36.1 KB
billed_lines_apr_sep_2026.csv11,000 billed lines with cost at date and the re-costed sell1.3 MB
xero_bill_crosscheck.csv60 bill lines checked against the new cost5.5 KB

Tell me what’s bugging you and I’ll tell you where I’d look first.

Send a short note on Upwork about what is slowing the business down. I’ll reply with where I’d start, and whether the US$300 Systems Health Check is the right first step.