ServiceTitan pricebook import errors: the duplicate-code and subcategory fixes
Most ServiceTitan pricebook import errors come down to three things: a duplicate code, a service pointing at a category that does not exist yet, and a silent one where a full-replace import wipes your vendor mapping. The first two throw an error and stop the import. The third throws nothing and quietly costs you data. Here is what causes each and the exact fix.
The duplicate-code error
ServiceTitan uses the code as the unique key for every service, material, and piece of equipment. If two rows in your import share a code, ServiceTitan cannot tell them apart, and the import stops. You will usually see it as a duplicate-code or “code already exists” error.
The fix is to make every code unique before you import:
- Open your import sheet and sort by the Code column.
- Flag duplicates (conditional formatting on the Code column, or a quick filter, finds them in seconds).
- For each duplicate, decide which row is the real one. Delete the stray, or give it its own code if it is genuinely a different item.
- Re-import.
The deeper cause is almost always copy-paste history: items duplicated from an old software migration, or the same service built twice under two categories. If you are constantly fighting duplicates, the book has a structure problem, not a one-off typo.
The subcategory or category error
This one means a service or material is pointing at a category that does not exist in the book yet, or the category path on the row does not match a real category exactly. ServiceTitan has nowhere to file the item, so it errors.
The fix is order:
- Import the Categories sheet first, and confirm every category leaf you reference actually exists.
- Then import Services and Materials that point at those categories.
- Make sure each row’s category path matches an existing leaf exactly, including spelling and the Category1 / Category2 / Category3 levels. A trailing space or a renamed parent is enough to break it.
Categories are the foundation. Build and import them first, and the services have somewhere to land.
The silent one: your vendors get wiped
This is the import “error” that does not throw an error, and it is the one that actually costs you. On a full-replace import, your vendor mapping can quietly disappear.
We watched it happen on a multi-location shop: after the import, parts that used to carry Plumb Supply, Johnstone, and Ferguson all came back showing only the warehouse default replenishment vendor. Nothing failed, nothing flagged. The vendor data was just gone, and nobody noticed until they went looking for it weeks later.
The fix is caution with full replacements:
- Back up your current export before any import. Always.
- Avoid a full-replace import if you can update in place instead.
- If you must replace, re-map vendors afterward, and spot-check the vendor columns on a sample of parts before you trust it.
A clean import is worth nothing if it silently erases the part-number and vendor work you spent months building.
The clean-import order, in one list
When you build the import sheet, this order avoids most of the errors above: Categories, then Equipment, then Services, then Materials, then the links between them. Unique codes throughout. Back up first. Spot-check vendors and prices after.
One more safety net: after the import, run the free Pricebook Compare on your before and after exports. It shows exactly what changed, so a silent vendor wipe like the one above gets caught in seconds instead of weeks.
Our free Pricebook Health Audit reads your export and flags duplicates, missing categories, and zeroed-out fields before you ever hit import, right in your browser.
When the errors mean a rebuild, not a patch
If every import is a fight, the problem is not the import, it is the book. Duplicate junk, no clean category tree, and items dumped in without structure turn every change into an error. That is the same bloat that makes a book carry 400 services when the good ones number 80, and it is exactly what a real rebuild fixes.
The complete guide to a ServiceTitan pricebook that sells walks the whole structure, and when you want it handled, the rebuild is the work we do.