Housecall Pro’s flat rate pricing feature calculates service pricing based on your business inputs Housecall Pro . It empowers you to create reliable, profitable pricing for every service by integrating your actual costs Housecall Pro .
Set up flat rate pricing by defining cost inputs, markup tiers, and labor rules in your chosen app
Configuring consistent quotes requires defining eight specific price book inputs. These inputs include cost inputs, markup tiers, labor rates, rounding rules, bundle logic, job structure, update cadence, and profit checks. The feature empowers you to create reliable, profitable pricing for every service by integrating your actual costs Housecall Pro . Start by opening your current price book and identifying which material categories currently lack defined markup tiers.
Key takeaways for how to set up flat rate pricing rules in 4 apps
- Define cost ranges so Housecall Pro automatically applies markups to materials in your Price Book that fall within those defined cost ranges, according to Housecall Pro .
- Set the upper limit for the last ServiceTitan cost range to $99,999 to cover all remaining material costs, according to ServiceTitan .
- Configure ServiceTitan labor rates by charging a specific amount, such as $150 per hour for all hours, according to ServiceTitan .
- Add FieldPulse Markup Categories to customize markups beyond the default, including rates for labor, supplies costing $1–$50, or stainless steel items, according to FieldPulse .
- Select a ServiceTitan rounding amount from the dropdown, choosing nearest $1, $10, or $100, according to ServiceTitan .
How each app defines base costs and material markups
Base costs form the foundation of your flat-rate pricing structure. Different platforms handle these inputs with distinct logic, so understanding each app's specific definition prevents margin erosion. ServiceTitan's Generic Cost option uses a fixed cost for materials, keeping the service price the same, no matter which material is used, according to ServiceTitan . ServiceM8 defines each material or service with a Price, which is what you sell the item for, and a Purchase Cost, which is your cost to buy the item, according to ServiceM8 . This dual-field structure allows you to track the spread between your acquisition cost and your revenue on each line item.
When configuring markup tiers, you must align your cost inputs with your desired profit model. ServiceM8 provides a specific rule for items that generate revenue without a direct acquisition cost. If you sell materials that actually have no cost, such as fees, then set their Purchase Cost to $0.01 to ensure that their sell price is treated as pure profit, according to ServiceM8 . That $0.01 Purchase Cost is what makes the sell price count as pure profit.
Housecall Pro and FieldPulse handle cost inputs differently, but the principles of defining base costs remain consistent across all four platforms. You should verify that every line item in your price book has a clearly defined cost source. For ServiceM8, audit your material list to ensure that every item has both a Price and a Purchase Cost entered. Pay special attention to items that actually have no cost, such as fees, because the $0.01 Purchase Cost rule covers items like these.
Configuring labor rates
ServiceTitan allows you to structure labor charges by varying the rate based on the duration of work. For example, charge $150 per hour for the first 2 hours, then $130 per hour for each additional hour, according to ServiceTitan . This tiered approach requires you to define specific thresholds within your dynamic pricing rules. You must input the initial hourly rate and the subsequent rate for extended hours. The first two hours are billed at the higher rate. Any time beyond that point is billed at the reduced rate. This configuration supports consistent quoting for jobs that exceed the initial time block.
Housecall Pro emphasizes the need for ongoing maintenance of your labor rate settings. It’s crucial to periodically review and adjust this rate as your costs or business conditions change, to keep your pricing strategy aligned with your financial goals, according to Housecall Pro . This review process is part of your update cadence. You should check your labor rates against current operational costs. Adjust the rate if your expenses increase or decrease. This keeps your pricing strategy in line with your financial objectives. Regular adjustments prevent margin erosion over time. The rate should reflect your current business conditions. Do not set the rate and ignore it for long periods. Periodic review ensures your labor pricing remains profitable.
Set your labor rates in both apps to reflect your current cost structure. Define the tiered hours in ServiceTitan to manage longer jobs. Schedule a recurring review in Housecall Pro to adjust for cost changes. These steps keep your labor pricing consistent and aligned with your financial goals.
A filled reference table for pricing logic across 4 publishers
The table below shows the eight price book inputs and the rule each publisher documents for that input. A filled cell gives that publisher's rule, and a cell with no documented rule stays N/A.
| Publisher | Cost Inputs | Markup Tiers | Labor Rates | Rounding Rules | Bundle Logic | Job Structure | Update Cadence | Profit Check |
|---|---|---|---|---|---|---|---|---|
| Housecall Pro | Materials in Price Book | Automatically applied to cost ranges | Periodically review and adjust the rate as costs or business conditions change | N/A | N/A | N/A | Periodically review and adjust the rate as costs or business conditions change | N/A |
| ServiceTitan | Generic Cost fixed material cost | Last range upper limit $99,999 | $150 per hour example | Nearest $1, $10, or $100 | N/A | N/A | N/A | N/A |
| FieldPulse | Labor hours and materials on each flat-rate job | Custom Markup Categories, including supplies costing $1–$50 | N/A | N/A | N/A | Each flat-rate job carries labor hours, materials, and markup so the price is consistent no matter who quotes it | N/A | N/A |
| ServiceM8 | Price and Purchase Cost | N/A | N/A | N/A | Activate Bundles in Settings > ServiceM8 Add-ons and add a dashboard bundle to a job like a regular item | N/A | N/A | GP% calculation |
Housecall Pro handles calculations by automatically applying markups to materials in your Price Book that fall within defined cost ranges, according to Housecall Pro . ServiceTitan suggests setting the upper limit for the last cost range to $99,999 to cover all remaining material costs, according to ServiceTitan . The same source provides an example of charging $150 per hour for all hours when configuring labor, according to ServiceTitan . For rounding, ServiceTitan allows you to select the amount from a dropdown, offering nearest $1, $10, or $100, according to ServiceTitan . FieldPulse lets you add Markup Categories to customize markups beyond the default, such as a rate for labor or supplies costing $1–$50, according to FieldPulse . ServiceM8 defines each material or service with a Price for selling and a Purchase Cost for buying, according to ServiceM8 . To verify margins, ServiceM8 calculates GP% by dividing profit by sell price, such as $50 profit on a $150 sale equaling 33%, according to ServiceM8 .
Structuring flat-rate jobs and bundles for field techs
FieldPulse structures its pricebook as a flat-rate sales tool that teams use to quote jobs instead of pricing each one from scratch, according to FieldPulse . In this setup, each flat-rate job carries its labor hours, materials, and markup, so the price the customer sees is consistent no matter who quotes it, according to FieldPulse . The system is working when a tech opens the pricebook on an estimate or invoice, picks a flat-rate job, and the price, line items, and add-ons fill in exactly as set, requiring no call to the office or guessing, according to FieldPulse .
ServiceM8 handles job structuring through its Bundles Add-on, which allows users to activate bundles in Settings > ServiceM8 Add-ons to get started, according to ServiceM8 . Once a bundle is created in the Online Dashboard, you can add them to jobs much like you search and add regular items, both online and in the ServiceM8 app, according to ServiceM8 . You can add a bundle to a job the same way you add a regular item, both online and in the ServiceM8 app.
For field techs, the goal is to reduce decision points during quoting. FieldPulse fills in the price, line items, and add-ons when a tech picks a flat-rate job, while ServiceM8 lets you add a created bundle to a job like a regular item. FieldPulse keeps the price the customer sees consistent no matter who quotes the flat-rate job, because each flat-rate job carries its labor hours, materials, and markup. When configuring your own price book, identify which recurring jobs in FieldPulse can be converted into flat-rate jobs with defined labor and material components, and determine which multi-item jobs in ServiceM8 benefit from being grouped into bundles for easier selection in the app. When a tech picks a FieldPulse flat-rate job, the price, line items, and add-ons fill in exactly as set, with no call to the office and no guessing.
Verifying profit margins and rounding final prices
Before finalizing a quote, confirm that your margin calculations align with your business goals. ServiceM8 provides a clear method for calculating gross profit percentage in its Job Costing Overview. According to ServiceM8 , if you buy an item for $100 and sell it for $150, the total profit is $50. The gross profit percentage (GP%) is calculated by dividing the profit by the selling price, resulting in 33% (50/150 = 0.333333 = 33%). Use this formula to verify that your material markups generate the intended profit on each line item.
Rounding your final price ensures quotes are clean and easy to communicate. ServiceTitan allows you to adjust the final amount using specific rounding rules within its Add modifiers to dynamic pricing rule settings. According to ServiceTitan , you can select the rounding amount from a dropdown menu. The available options are nearest $1, $10, or $100. Choose the increment that matches your pricing strategy and client expectations.
Use the ServiceM8 GP% check on ServiceM8 lines, and use the ServiceTitan rounding dropdown only inside ServiceTitan. In ServiceM8, GP% is profit divided by the sell price, and the overview example is $50 profit on a $150 sale, which equals 33%. In ServiceTitan, choose a rounding amount from the dropdown: nearest $1, $10, or $100. This two-step process separates margin validation from final presentation. It ensures that every quote reflects your cost structure while maintaining a professional appearance.
Open your current price book and identify which material categories currently lack defined markup tiers.
Related guides
FAQ: How to set up flat rate pricing rules in 4 apps
How does ServiceTitan handle material costs in dynamic pricing?
ServiceTitan offers a Generic Cost option that uses a fixed cost for materials, keeping the service price the same, no matter which material is used, according to ServiceTitan . This approach stabilizes the quoted price regardless of the specific material selected for the job.
What is the recommended upper limit for the last cost range in ServiceTitan?
For the last range in a dynamic pricing rule, set the upper limit to $99,999 to cover all remaining material costs, according to ServiceTitan . This configuration ensures that higher-value materials fall within the defined pricing structure.
How does Housecall Pro calculate material markups automatically?
Housecall Pro automatically applies defined markups to Price Book materials whose costs fall within the defined cost ranges.
How do you activate bundles in ServiceM8?
To get started, activate Bundles in Settings > ServiceM8 Add-ons, according to ServiceM8 . This step enables the feature within your account settings.
What purchase cost should a no-cost ServiceM8 material such as a fee use?
Set the Purchase Cost to $0.01 so the sell price is treated as pure profit.