> For the complete documentation index, see [llms.txt](https://docs.bluepro.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bluepro.ai/estimates-and-price-book/setting-up-your-price-book.md).

# Setting Up Your Price Book

Your price book is the catalog behind every estimate and invoice: every service and material, priced once, so your team never has to guess or retype a number in the field. This guide covers building it out — categories, services, materials, bulk import, and adjusting prices across the board.

> 🎥 **VIDEO —** Hero (90s): tour the Services/Materials/Modifiers tabs, add a service, run a bulk price adjustment. Top of page.

{% file src="/files/lUymeVIHqbFRP9ck8aZl" %}

### Where the Price Book Lives

Page: <https://gobluepro.app/price-book>

Open **Price Book** on the web. Three tabs across the top: **Services**, **Materials**, and **Modifiers** (covered in *Options, Add-Ons & Modifiers*). The price book is a **web-only builder** — technicians can browse and search it on mobile, but full setup happens here.

> 📸 **IMAGE —** The Price Book page with the Services / Materials / Modifiers tabs visible.

<figure><img src="/files/bMas9GGIkABmCGhFtCyX" alt=""><figcaption></figcaption></figure>

### Categories

Page: <https://gobluepro.app/price-book?serviceView=categories>

Services and materials are organized into **categories**, and categories can nest — a "Plumbing" category might contain "Water Heaters," which contains "Tankless." Add a category with the **Add Category** button; click the pencil icon on a category card to rename it. Click into a category to drill down; **Back** to climb out.

> 📸 **IMAGE —** A nested category tree, e.g. Plumbing → Water Heaters → Tankless.

<figure><img src="/files/hFIW71dWypC4yB2ihZey" alt=""><figcaption></figcaption></figure>

> 💡 **Tip — Plan your top-level categories first.** A handful of broad categories (Plumbing, Electrical, HVAC…) with narrower subcategories underneath is easier to navigate than dozens of flat, similarly-named categories.

### Adding a Service

Page: <https://gobluepro.app/price-book/service?mode=add>&#x20;

Click **Add Service** (or **+ Add** inside a category). Fill in:

* **Name** and **Description**
* **Category** (required)
* **Item Code** (optional, useful for import matching — see below)
* **Cost Price** and **Selling Price**
* **Image** (optional photo)
* **Service Duration** (labor hours — used as a default when the service is added to a job)
* **Warranty Description** (optional)
* **Taxable** and **Allow Discounts** toggles (both on by default)

From the same screen you link **Materials** (with quantities), **Add-ons**, and **Option Groups** to the service — all covered in *Options, Add-Ons & Modifiers*.

> 📸 **IMAGE —** The Add Service form with the Materials, Add-ons, and Option Groups sections visible below the core fields.

<figure><img src="/files/uyLfZkhtBMgM11em0TlL" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/bHGGBNrJzkzvvtvOgeNQ" alt=""><figcaption></figcaption></figure>

### Adding a Material

From the main Price Book page click the **Materials** button between "Services" and "Modifiers":\
&#x20;  Page: <https://gobluepro.app/price-book?tab=materials&serviceView=list&materialView=list>

<figure><img src="/files/LzzJSwxH6Ex8nyjRWxbv" alt=""><figcaption></figcaption></figure>

To add a Material, click the "Add Material" button now present on the right-hand side of the screen.\ <br>

## Add New Material form:

* **Name**, **Description**, **Category** (required)
* **SKU** (optional — auto-generated if you leave it blank)
* **Cost Price** and **Selling Price**
* **Unit of Measure** (each, box, roll, sq ft, lb, and more)
* **Image** (optional)
* **Taxable** toggle

> 📸 **IMAGE —** The Add Material form.

<figure><img src="/files/7omc0xuiwZjp5cCTT6o2" alt=""><figcaption></figcaption></figure>

### Material Display Modes

Every service has a **material display** setting that controls what the *customer* sees on an estimate or invoice:

* **Itemized** — each material listed with its own price
* **Included** — materials listed by name, no prices shown
* **Bundled** — materials rolled into the service price, not listed separately
* **Company Default** — inherit whatever your Estimate/Invoice Settings default to, instead of setting it per service

> 📸 **IMAGE —** The material display dropdown on a service, showing all four options.

<figure><img src="/files/1HutcC5NTNC3Qicusprz" alt=""><figcaption></figcaption></figure>

> 💡 **Tip — Set this once at the company level, override rarely.** Use **Company Default** for most services and only pick a specific mode for the handful of services where you want different behavior (e.g., itemizing materials on big installs to justify the price).

### Bulk CSV Import

For getting a large price book in fast, or updating one, use **Import** (from a category, or globally). The flow: **Upload → Map columns → Duplicates → Verify → Import.**

**Services CSV columns:** Category, Subcategory 1/2/3, Name, Description, Item Code, Cost, Price, Warranty Description, Service Duration, Taxable, Allow Discounts.

**Materials CSV columns:** Name, Description, Category, Sub Category 1/2/3, Cost, Selling Price, SKU, Unit of Measure, Taxable.

Nested categories come from the CSV itself — put "Plumbing" in **Category** and "Water Heaters" in **Subcategory 1** and BluePro builds the tree for you.

> 📸 **IMAGE —** The import mapping step showing CSV columns matched to price book fields.

<figure><img src="/files/x7aqidQ92aBd6q8AUVJG" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/C7fAtSfKwhUTyaHT1ZGX" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/dcJSBQVfImHB6Nvn84RB" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/Tc3iHp6KF23zYXaMpV1V" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/jEb3NH4xJhnOkYIUoXtN" alt=""><figcaption></figcaption></figure>

**Duplicate handling:** BluePro matches existing items first by **Item Code** (services) or **SKU** (materials), then falls back to matching by **Name**. Matches are shown in a table with a badge for how they matched; you choose, row by row, whether to **Update** the existing item or **Skip** it.

> ⚠️ **Note — Review before you import.** Rows with missing required fields or errors are flagged at the Verify step. Fix them in your spreadsheet and re-upload, or skip those rows and add them by hand later.

> 🎞️ **CLIP —** Uploading a CSV, mapping columns, resolving a duplicate, and completing the import.

### Bulk Price Adjustments

Need to raise prices 5% across a category, or adjust your labor margin everywhere? Use the **Price Adjuster** button on the Services or Materials tab. Two tabs — **Cost Price** and **Selling Price** — each with several adjustment methods (percentage, flat amount, hourly rate, or margin-based). Pick your items by category or checkbox, review the **Preview Summary** of exactly what will change, then **Apply**.

> 📸 **IMAGE —** The Bulk Price Adjuster with a percentage increase applied to a category and the preview summary shown.

> 💡 **Tip — Always check the preview.** The preview shows old price → new price for every affected item before anything is saved, so you can catch a mistake (like adjusting the wrong category) before it goes live.

<figure><img src="/files/o5w8yfMwwI6yUmNaL4S9" alt=""><figcaption></figcaption></figure>

### What Technicians See on Mobile

On mobile, the price book is **view + search only** — technicians browse and filter by category (and by tag, if you've mapped items to a job type) when adding items to an estimate or invoice, but they can't create, edit, or delete price book items from the field. If they need something that isn't in the price book, they add a **Custom Item** on the job and can flip on **Save to Price Book** to send it back here for you to clean up and reuse (see *Invoicing Essentials*).

> 💡 **Tip — Review custom items periodically.** Anything techs save from the field with "Save to Price Book" lands with your default settings — swing back through occasionally to set the right category, materials, and display mode.

### FAQ

* **Can technicians edit prices from the field?** No — mobile is view/search only. Full setup is on the web.
* **How deep can categories nest?** As deep as you need — the CSV import supports at least three subcategory levels, and you can add more manually.
* **What happens to duplicates during import?** You choose per row: update the existing item or skip it. Matching is by Item Code/SKU first, then Name.
* **Does changing material display change my profit?** No — it only changes what the customer sees; your cost and margin are unaffected.
* **Can I preview a bulk price change before it applies?** Yes — the Price Adjuster always shows a preview summary before you apply.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.bluepro.ai/estimates-and-price-book/setting-up-your-price-book.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
