/pricing is a 404. Towbook meters completed calls, Clearplan meters users, TowMarX meters prepaid jobs, Ranger SST meters seats plus trucks. None of them meters the thing that moves the money. In Baltimore City a trespass tow is capped at $300 — not because anyone wrote $300, but because Md. Transp. §21–10A–04(a)(1)(i) says twice the city's own police-tow fee and City Code §31–11 sets that at $150. Reach the vehicle before it leaves the lot and §21–10A–05(b) caps the same job at $150. On our four-truck model that swing is worth $13,500 a month and every software bill in the market stays flat through all of it. Meanwhile the card rail Maryland obliges you to offer costs $28,836 a year — 7.5× the dispatch software. And Baltimore City holds just nine towing establishments with payroll against Baltimore County's thirty-eight.
The best hour I have spent researching this series was in a gravel yard in Brooklyn, south of the harbor, standing next to a dispatcher who was arguing with a driver about a Honda.
The Honda was on the deck. It had been winched, strapped and photographed. The owner had arrived roughly ninety seconds later, out of breath, and the driver was on the radio asking what to charge. The dispatcher said a number. The driver said a different number. Then the dispatcher asked the only question that mattered, which was not how far the tow had gone or how much work had been done, but this: are you off the lot yet.
He was not. So the answer was half.
This is the twenty-ninth trade we have taken apart in this series, and it is the first one where the price of the job is set by a boundary rather than by the job. Nothing about that Honda changed in the ninety seconds. The same chain, the same winch, the same driver, the same fuel. What changed was whose side of a painted line the truck was standing on, and Maryland has decided that this — not the labor, not the equipment, not the time — is the fact that halves the invoice.
I want to be careful here, because towing is a trade people already have opinions about. Some of those opinions are earned. But the operators I have talked to in Baltimore are running a business with an unusually cruel shape: the ceiling on what they may charge is set by somebody else, the floor under what it costs them is diesel and insurance, and the difference between a good month and a bad one turns on events that happen in a parking lot they do not own, ninety seconds at a time. That is a business that lives or dies on whether the software can keep up with the driver. Mostly it cannot.
Let us start with the market, because Maryland's towing industry is smaller than almost anyone guesses, and it is smallest exactly where the arguments are loudest.
Nine companies
The Census Bureau's County Business Patterns for 2023 — the most recent county-level release — counts 202 motor vehicle towing establishments with paid employees in Maryland (NAICS 488410), employing 1,192 people against an annual payroll of $60,058,000. That averages 5.9 employees and $297,317 of payroll per establishment. As industries go this is tiny. Maryland's auto body shops alone employ more than four times as many people.
Then you look at where those establishments are.
| Jurisdiction | Establishments | Employees | Per establishment | Annual payroll | Per employee |
|---|---|---|---|---|---|
| Prince George's | 45 | 256 | 5.7 | $10,841,000 | $42,348 |
| Baltimore County | 38 | 251 | 6.6 | $15,867,000 | $63,215 |
| Anne Arundel | 23 | 122 | 5.3 | $4,974,000 | $40,770 |
| Montgomery | 23 | 131 | 5.7 | $7,124,000 | $54,382 |
| Howard | 12 | 110 | 9.2 | $5,441,000 | $49,464 |
| Baltimore City | 9 | 55 | 6.1 | $3,513,000 | $63,873 |
| Washington | 8 | 63 | 7.9 | $3,178,000 | $50,444 |
| Harford | 6 | 15 | 2.5 | $648,000 | $43,200 |
| Frederick | 5 | 58 | 11.6 | $2,224,000 | $38,345 |
| Carroll | 5 | 21 | 4.2 | $1,069,000 | $50,905 |
| Maryland total | 202 | 1,192 | 5.9 | $60,058,000 | $50,384 |
Baltimore City has nine. The county wrapped around it has thirty-eight. That is a ratio of more than four to one across a municipal line, in the jurisdiction that generates far and away the most towing controversy in the state.
The tempting reading is that city firms must be different somehow — smaller, more marginal, less established. The payroll numbers say the opposite, and this is the most useful thing in the table. Baltimore City towing pays $63,873 per employee; Baltimore County pays $63,215. Those are within one percent of each other, and both sit roughly a quarter above the state average of $50,384. City towing firms are not scrappier or poorer than county towing firms. There are simply four times fewer of them, and they pay the same.
Nine companies with payroll serve a city of more than half a million people. Whatever you think about how towing is conducted in Baltimore, it is being conducted by a very small number of businesses, most of which are family-sized.
The reason for the gap is the same reason the city has fewer of most vehicle-adjacent businesses: land. A towing operation needs a secured, zoned, fenced yard within a short radius of the work, and Baltimore City Code §22-5(b)(3) makes the adequacy and accessibility of that yard a licensing condition. Yards are cheaper in Rosedale and Halethorpe than in Pigtown, and the ten-mile radius the city imposes is generous enough to reach into the county from almost anywhere. So the yard sits outside the line and the trucks drive in — which is also, as we are about to see, the source of most of the compliance difficulty.
The standard County Business Patterns caveat is unusually important in this trade: the series counts only establishments with paid employees. A one-truck operator who pays himself as an owner appears in none of these numbers, and in towing that population is meaningful. It also explains something about the software market. When a vendor tells you the addressable market is thirty-something thousand US towing companies, they are counting a population in which the median business owns two trucks. That is who these products are priced for, and it shows.
The vendors, and the brand that stopped existing
I want to be fair to the incumbents, because towing dispatch software is genuinely good and genuinely cheap, and the argument I am going to make later is emphatically not that you should replace it.
We checked thirty pricing URLs across twenty-four products on 18 August 2026, going to each vendor's own page rather than to an aggregator or a review site. Three publish a complete, readable price. That puts towing near the bottom of the transparency table we have been keeping across this series — better than independent pharmacy, where zero of thirty published, but well behind home improvement, where fourteen of twenty-five did.
The headline result is not a price at all. It is a redirect.
TRAXERO was, until recently, the largest name in this category: the group that had assembled Dispatch Anywhere, TOPS and Omadi under one roof. Type traxero.com today and you receive an HTTP 301 — a permanent redirect — to autura.com/towing-and-recovery/towing-management-software. The brand is gone. And Autura, the surviving entity, returns a 404 at /pricing, at /pricing/ and at /plans, while the site root and the product pages serve perfectly well.
The absorbed brands are in worse shape. intowsoftware.com has no DNS A record at all — the domain does not resolve. omadi.com and dispatchanywhere.com both have addresses on file and both refuse the connection. trackermgt.com 301s to trackermanagement.com. This is what consolidation looks like from the outside when you check it rather than read about it, and it is worth doing yourself before you sign anything: four of the products a 2023 buyer's guide would have told you to evaluate cannot currently be reached at the address that guide printed.
| Product | Pricing page | Published price | Metering unit |
|---|---|---|---|
| Towbook | 200 | $109 / $209 / $319 / $429 per month | Completed calls per month |
| Clearplan | 200 | $97 / $149 / $197 per month at one user | Users who can log in |
| TowMarX | 200 | $0/month; credits $50 / $100 / $150 / $250 | Prepaid jobs |
| Autura (absorbed TRAXERO) | 404 at three URLs | None | Not stated |
| Ranger SST | 404 on main domain; 200 on info. | None — “tailored” | Office users + drivers + trucks |
| Beacon Software | 200 | None | Not stated |
| TowSoft | 200 | None | Not stated |
| Swoop | 200 | None | Not stated |
| HONK | 200 | None | Not stated |
| Tracker Management (TOPS) | 404; domain 301s | None | Not stated |
| TowTrax | 404 | None | Not stated |
| Auto Data Direct | 404 | None | Not stated |
| Omadi, InTow, Dispatch Anywhere | Unreachable — no response; InTow has no DNS record | ||
Two vendors deserve credit rather than criticism here, and one deserves both.
Towbook publishes the fullest pricing card in the trade and does it without a sales gate: four tiers, the call allowance printed on each, the overage rate stated in plain text, and a feature matrix running to about sixty rows that tells you exactly which tier gates which capability. That is more disclosure than most enterprise software offers, and it is the reason Towbook is the only vendor I can meaningfully take apart below.
TowMarX does something almost nobody does: its discount claims are arithmetically honest. It advertises “save 20%”, “save 40%” and “save 60%” on its three larger credit packs, and against its own $2.50-per-job entry pack those work out to exactly 20%, exactly 40% and exactly 60%. I check these every time and they are usually rounded generously. These are not.
Ranger SST publishes no number but does something more useful than most: it describes its meter. Its page states that it charges for primary simultaneous office users — dispatchers, accountants — and for drivers, with a declining rate by company size, plus optional per-truck charges for fixed GPS. You still have to call, but you can at least model the shape of the bill before you do. That is a real courtesy and I wish more vendors extended it.
The meter is the call, and the call is not the money
Here is where towing gets strange, and it is worth doing the arithmetic slowly because the conclusion is not the one the pricing page is arranged to produce.
Towbook's tiers are metered on calls completed per month. Convert each tier to a cost per included call and a pattern appears immediately.
| Plan | Monthly | Calls included | Cost per included call |
|---|---|---|---|
| Basic | $109 | 250 | $0.436 |
| Professional | $209 | 500 | $0.418 |
| Ultimate+ | $319 | 1,000 | $0.319 |
| Enterprise | $429 | 1,500 | $0.286 |
| Overage block | $149 | 1,000 | $0.149 |
The overage rate is cheaper than every plan's included rate. Not marginally — it is 1.9× cheaper than the best tier and 2.9× cheaper than the entry tier. Going over your limit is the least expensive way to buy a call in the entire price list.
That inverts the normal logic of tiered pricing, and once you follow it through, the recommended plan is never the right one.
| Calls / month | Basic + blocks | Professional + blocks | Ultimate+ | Enterprise | Cheapest |
|---|---|---|---|---|---|
| 1,000 | $258 | $358 | $319 | $429 | Basic + 1 block |
| 1,250 | $258 | $358 | $468 | $429 | Basic + 1 block |
| 1,500 | $407 | $358 | $468 | $429 | Professional + 1 block |
| 2,500 | $556 | $507 | $617 | $578 | Professional + 2 blocks |
At every volume we tested, Enterprise is never the cheapest way to buy that volume, and at a thousand calls a month the entry plan plus one overage block costs $258 against Ultimate+'s $319 — less money for 250 more calls. If you were buying capacity alone you would buy Basic and deliberately blow through the ceiling every single month.
You cannot. And the reason is the best illustration I have found of why the meter and the product are two different things.
Towbook's Private Property Tools — the authorized vehicle list, the property manager portal, configurable property tags, permit management and stickering — start at Professional. Which means the plan the arithmetic points at is the plan a Baltimore trespass tower is not able to use.
That is not a criticism of Towbook. Feature gating is how software has been sold for thirty years and the gates are published in full, which is more than most vendors manage. It is an observation about what you are actually buying: not calls, but the right to do a particular kind of work. The call meter is the invoice; the feature gate is the product.
And now the part that no vendor in this market prices at all.
A drop is a whole call and half a job
Let me put a real Baltimore operation on the page. Four trucks, six people — which is almost exactly the Baltimore City average of 6.1 employees per establishment from the table above — running 600 dispatched calls a month across a mixed book of trespass work, police rotation and motor club calls.
| Call type | Volume | Rate | Monthly | Ceiling set by |
|---|---|---|---|---|
| Trespass tow, completed | 180 | $300 | $54,000 | §21–10A–04(a)(1)(i) × City §31–11 |
| Trespass drop, released in the lot | 90 | $150 | $13,500 | §21–10A–05(b)(4) |
| Police-rotation tow | 150 | $150 | $22,500 | City Code §31–11 |
| Motor club call | 180 | $75 | $13,500 | The club's contract |
| Total | 600 | — | $103,500 | — |
That is $1,242,000 a year, which sounds like a lot until you remember it is carrying four trucks, six salaries, a fenced yard, commercial liability insurance and diesel.
Now hold the call count completely still at 600 and move only one thing: how many of the 270 trespass calls end in a drop rather than a completed tow. Nothing else changes. Same trucks, same drivers, same dispatches, same fuel, same photographs, same paperwork.
| Drop rate | Completed tows | Drops | Trespass revenue | Towbook bill | TowMarX bill | Clearplan bill |
|---|---|---|---|---|---|---|
| 17% | 225 | 45 | $74,250 | Unchanged | Unchanged | Unchanged |
| 33% | 180 | 90 | $67,500 | Unchanged | Unchanged | Unchanged |
| 50% | 135 | 135 | $60,750 | Unchanged | Unchanged | Unchanged |
$13,500 a month — 18% of trespass revenue — moves, and not one software bill in the market moves with it. Towbook counts a drop as a completed call and charges full freight for it. TowMarX burns a prepaid job credit on it. Clearplan does not notice it at all because Clearplan is counting people, not work.
The drop is the defining transaction of this trade and every meter in the market treats it as an ordinary one. You pay the same for the calls that pay you half.
I do not think this is anyone's fault, exactly. Towbook is a national product and Maryland's 50% drop ceiling is a Maryland rule. But it does mean something practical: the vendor you should choose is a function of a Maryland statute about where a car is standing, and no pricing page will ever tell you that. If your lots are dense and walkable and your drop rate runs high, a per-call or per-job meter is charging you full price for half-price work, and a per-seat meter is suddenly the cheaper shape. If your lots are suburban park-and-rides where nobody arrives in time, the reverse.
The part no national platform models
Everything up to here has been about money you can see on a pricing page. The rest of this article is about the seven rules that actually run a Baltimore towing yard, none of which appear in any product I looked at. I have put them in the order a single tow encounters them: the release, the ceiling, the sign in the lot, the payment at the window, what that payment costs, the clocks it starts, and the rate card the city holds a copy of.
Whether or not it has been lifted off the ground
Now the rule itself, because it is worth reading in full. Md. Transportation §21–10A–05(b):
“Before a vehicle is removed from a parking lot, a tower who possesses the vehicle shall release the vehicle to the owner or an agent of the owner: (1) If the owner or agent requests that the tower release the vehicle; (2) If the vehicle can be driven under its own power; (3) Whether or not the vehicle has been lifted off the ground; and (4) If the owner or agent pays a drop fee to the tower in an amount not exceeding 50% of the cost of a full tow.”
Read clause (3) again, because it is doing something unusual. The legislature named the obvious physical test — is the car in the air — specifically in order to take it away. That test is the one every driver in the country would reach for and the one every dispatcher would accept over the radio. Maryland anticipated it and forbade it.
What replaces it is not physical at all. The trigger is the phrase at the very front of the sentence: before a vehicle is removed from a parking lot. The boundary is the property line of the lot. Not the hook, not the winch, not the lift, not the point at which the wheels start turning. A fully loaded flatbed idling in the last parking space is a $150 transaction. The same flatbed thirty feet later, on the street, is a $300 one.
Consider what that asks of a piece of software. The transaction type has to be settled in the field, by the driver, against a geographic boundary, in the seconds while somebody is running toward the truck — and it has to be settled correctly, because §21–10A–06(2) makes a tower who violates the subtitle liable to the owner, a secured party, an insurer or a successor in interest for triple the amount paid to retake possession of the vehicle. Charging $300 where the law said $150 is not a $150 mistake and a refund. It is a $900 exposure on a $300 job, and §21–10A–06(1) stacks actual damages on top of it.
There is a second condition hiding in clause (2) that is quietly worse. The release duty applies “if the vehicle can be driven under its own power.” So the driver, standing in a parking lot with a stranger, must also form a view about the mechanical condition of a car they have not inspected — and that view decides whether refusing to release it was lawful. There is no procedure for this in the statute and no field for it in any product I looked at.
What a system can honestly do about all this is modest but it is not nothing: capture the truck's position and a timestamp at the moment the release is requested, record who requested it, record the driver's assertion about drivability, price the transaction from those facts rather than from the driver's arithmetic, and keep the whole record joined to the photographs. That converts a radio argument into evidence. It does not make the judgment easier. It makes it defensible, which in a trade with treble damages is the more valuable of the two.
The $300 that nobody wrote down
The ceiling itself is worth taking apart, because it is widely reported as a loophole and it is not one. It is arithmetic.
§21–10A–04(a)(1) caps the charge for a trespass tow at, among other things, “twice the amount of the total fees normally charged or authorized by the political subdivision for the public safety impound towing of vehicles.” Clause (iii) then adds a fallback: “if a political subdivision does not establish a fee limit for the public safety towing, recovery, or storage of impounded vehicles, $250 for towing and recovering a vehicle and $30 per day for vehicle storage.”
Baltimore City Code Art. 31 §31–11 sets the city's own police-initiated towing maximum at $150 for a non-commercial vehicle not requiring specialized recovery. Twice $150 is $300. The $250 figure never engages, because it is conditioned on the absence of a local limit and Baltimore has one.
Because Baltimore City took the trouble to cap what it charges for its own police tows, the private trespass ceiling in Baltimore is $50 higher than in a jurisdiction that set no limit at all. Regulating your own fee raised the private one. That is not a loophole; it is the multiplication working exactly as drafted.
I flag this not to defend the number but because the mechanism matters for anyone building against it. The Baltimore ceiling is not a constant. It is a derived value whose input lives in a different code, maintained by a different body, on its own amendment schedule. Hard-code $300 and you have written a dated bug: the day Baltimore adjusts §31-11, every invoice your system produces is wrong, and nobody will send you a notification. The correct implementation stores the city police-tow fee, the multiplier and the effective date, and derives the ceiling. That is three fields instead of one, and it is the difference between a system that ages and a system that rots.
The sign has to say the wrong thing
Now the local layer, which in this trade is the sharpest we have found in twenty-nine posts.
§21–10A–01(b)(2) expressly preserves the right of a local authority to regulate towing “in a more stringent manner.” Baltimore City has done so, in Article 15, Subtitle 22 of the City Code — a subtitle substantially rewritten by Ordinance 25-013, which moved towing licensure to the newly created Department of Consumer Protection and Business Licensing. Howard County has done so too, under its own Code §17.600. The results do not agree with each other, and they do not agree with the state.
| Rule | Maryland §21–10A | Baltimore City Art. 15 Sub. 22 | Howard County §17.600 |
|---|---|---|---|
| Maximum distance to the yard | 15 miles | 10 miles (§22-13(a)) | 12 miles |
| Hours the owner may collect | 6 a.m. to midnight, 7 days | 24 hours a day (§22-13(i)) | 24/7 |
| Sign density | 1 per 7,500 sq ft of lot | State rule applies | 1 per 45 spaces |
| Sign size | 24″ high × 30″ wide | State rule applies | 24″ × 30″ |
| Police notification | Within 1 hour | State rule applies | Within 1 hour |
| Record retention | Not specified | 2 years (§22-10(c)(3)) | Per county rules |
Start with the radius, because it is the easy one. A Baltimore-based operator whose trucks work lots in the city, the county and Howard is subject to three different legal radii from one dispatch screen, and the applicable one is decided by where the vehicle was picked up rather than where it is going. Ten miles is not a preference. Exceeding it without the owner's consent is a misdemeanor under City Code §22-18, punishable by a fine of $50 to $500 or up to 60 days, with each day a separate offense.
Note also that the state and Howard County measure sign density in different units. Maryland counts square feet of parking area; Howard counts spaces. For one physical lot those two rules produce different sign counts, and which one governs depends on which side of a county line the asphalt sits.
And then the hours, which is the finding I keep turning over.
§21–10A–05(a)(3) requires the tower to give the owner “immediate and continuous opportunity, at a minimum from 6 a.m. to midnight, 7 days per week” to retake the vehicle. Baltimore City §22-13(i) makes it unlawful for a towing service to deny that same opportunity 24 hours a day. The city rule is more stringent, so in Baltimore the city rule governs. So far, so ordinary — two governments, one wins.
Except for what the sign has to say. §21–10A–02(b)(4) requires that every sign in the lot “State that State law requires that the vehicle be available for reclamation at a minimum from 6 a.m. to midnight, 7 days per week.”
In a Baltimore City parking lot, a fully compliant sign is required to tell the driver a number that is six hours worse than the one the tower actually owes. The state mandates the wording; the city sets the duty; and the wording is the weaker of the two.
Both instruments are internally correct. State law does require that minimum — the sign says so accurately. But the customer-facing artifact is fixed by one government while the obligation it appears to describe is set by another, and the artifact understates it. The practical consequence is not theoretical: a tower who treats the sign as the specification and closes the yard at midnight is in violation of §22-13(i) at 12:01 a.m., having read their own legally mandated signage.
This is the shape I would now go looking for in any regulated trade, and I have not seen it anywhere else in this series: a customer-facing document whose text one authority dictates and whose subject matter another authority governs. Wherever it exists, the compliant document is a bad specification, and any system built by reading the document rather than the code inherits the gap.
The checkout Maryland wrote for you
If you take one section of this article into a build, make it this one, because it is the most explicitly software-shaped statute I have read in twenty-nine trades. Maryland did not merely require you to take payment. It specified the fallback chain.
§21–10A–05(c), in order:
| Condition | What the storage facility must do | Cite |
|---|---|---|
| Normal operation | Accept cash or at least two major, nationally recognized credit cards | (c)(1)(i) |
| Facility accepts only cash | Have an operable automatic teller machine available on the premises | (c)(1)(ii) |
| Cannot process a card and no operable ATM | Must accept a personal check | (c)(2)(i) |
| Cannot process the card because it was declined | May refuse the personal check | (c)(2)(ii) |
| At any time | Make the vehicle available for inspection and for retrieval of unattached personal property | (c)(3) |
Look at rows three and four together, because that pair is the entire engineering problem and I have never seen a statute draw the line there.
If your terminal is down, your processor is having an outage, or your yard's connection has dropped, you are obliged to take a personal check from a stranger for a $300 debt. If the customer's card is declined by the issuer, you may refuse the check. Same screen, same failed payment, opposite legal duties — and the distinguishing fact is whose fault the failure was.
Every payment stack in common use collapses these into one outcome. A gateway timeout and a hard decline both surface to the clerk as “payment failed.” Maryland attaches opposite obligations to the two, so a Baltimore towing yard needs a checkout that can tell you why it failed, and can prove later which one it was.
Technically this is not hard. Processors distinguish these cleanly at the API level — an issuer decline carries a decline code and a network response; a connectivity or processing failure carries a different error class entirely. The work is in surfacing that distinction to the person at the window, in language they can act on, and in writing the reason to the transaction record so that four months later, when somebody complains, you can show which branch of §21–10A–05(c) you were standing in. Off-the-shelf point of sale will not do this, not because it is bad software but because no other trade has asked it to.
The alternative the statute offers is worth noticing too, because it is unusually literal. If you would rather not take cards at all, you must keep “an operable automatic teller machine available on the premises.” The legislature made a piece of hardware uptime into a condition of lawful operation. Somebody has to know whether that ATM is working, and it will not be the ATM.
The card rail costs more than the software. A lot more.
Which brings us to the number that dwarfs everything else on this page.
Maryland obliges you to accept cards. Nobody obliges you to buy dispatch software. Price the two against each other on our four-truck model and the result is not close.
Take the 420 monthly transactions that are actually collected at the window — the trespass tows, the drops and the police-rotation releases — totalling $90,000 a month. The motor club work bills to the club on terms and does not touch a card. Square's published in-person rate, read from its own fee page on 18 August 2026, is 2.6% + 15¢.
| Line | Basis | Monthly | Annual |
|---|---|---|---|
| Card processing | 2.6% of $90,000 + 420 × 15¢ | $2,403 | $28,836 |
| TowMarX at 600 jobs | 2 × Bulk + 1 × Pro pack | $650 | $7,800 |
| Towbook Ultimate+ | Covers 1,000 calls | $319 | $3,828 |
| Clearplan, entry | Standard, one user | $97 | $1,164 |
| Baltimore City license | $100 per truck per year × 4 | $33 | $400 |
The mandatory rail costs 7.5× the dispatch platform and 3.7× the most expensive published software option in the trade. Put differently: the card fees on a single busy month would pay for eight months of Towbook.
I am not going to pretend there is a clean escape. Unlike the trades in this series that sell recurring plans — where moving a season prepayment from card to bank debit is a straightforward win — a towing release is a one-time payment from a stranger who is angry and in a hurry, and bank debit is not a realistic instrument for that. The statute effectively requires the expensive rail because the expensive rail is the one that works at 2 a.m. with somebody you will never see again.
What you can do is smaller and still worth real money. Route the recoverable and account-billed side — motor clubs, property managers on contract, insurers, dealer accounts, repeat commercial customers — onto bank payment rather than letting it drift onto cards for convenience. Take the keyed-in rate seriously: Square's card-not-present figure is 3.3% + 30¢, and a yard that takes releases over the phone is paying an extra 0.7% plus fifteen cents for the privilege of not having the customer present. And know your own mix before you negotiate, which almost nobody does. The first thing I ask an operator for is a processing statement, and the second thing I ask is what share of that volume was card-present. Most cannot answer, and the answer is usually worth four figures a year.
Eight clocks, and they do not start together
The other thing a towing system has to do is keep time, and Maryland and Baltimore between them have arranged for eight separate clocks anchored to six different moments.
| Duty | Clock | Starts at | Cite |
|---|---|---|---|
| Notify the police department | 1 hour | The tow | §21–10A–04(a)(2) |
| Storage charges may begin | 12 hours | The vehicle being in fact available for recovery | City §22-11(c) |
| Notice costs become unbillable | 48 hours | Receipt at the storage facility | §21–10A–04(b) |
| No move to a second facility | 72 hours | Arrival at the first facility | §21–10A–05(a)(2) |
| Expired-registration tow permitted | 72 hours | Notice placed on the vehicle | §21–10A–04(a)(9) |
| Certified and first-class notice | 7 days | The tow, excluding days the business is closed | §21–10A–04(a)(3)(i) |
| Fall back from MVA e-notice to mail | 7 days | The electronic notice being sent | §21–10A–04(a)(3)(ii) |
| Retain the daily log | 2 years | The tow | City §22-10(c)(3) |
Three of these deserve a sentence each, because they are the ones that break spreadsheets.
The 12-hour storage clock in City Code §22-11(c) does not start at the tow, at arrival, or at the notice. It starts twelve hours after the vehicle is “in fact available for recovery by the owner or operator.” That is a state, not an event, and it is a state your own operations control. A yard that is not staffed, or a vehicle buried behind three others, is arguably not available — and the clock that bills the customer does not start until it is.
The 48-hour notice rule at §21–10A–04(b) is stranger still. You may charge the actual cost of providing notice under (a)(1)(iv) — but not if the owner, their agent, the insurer of record or a secured party retakes possession within 48 hours of the vehicle arriving at the yard. So you incur a real cost, and whether it is billable is decided by something the customer does two days later. In accounting terms it is a line item that has to be able to delete itself retroactively, which is exactly the sort of thing an invoice built as a static document handles badly and a ledger of events handles naturally.
And the 7-day notice clock at (a)(3)(i) runs “exclusive of days that the towing business is closed.” The statutory deadline is therefore a function of your own opening hours — which, in Baltimore City, §22-13(i) says are all of them. A yard that must be open 24 hours a day has no closed days to exclude, so in Baltimore the seven days are seven calendar days. In a county where a yard genuinely closes on Sundays, they are not. Same statute, two different deadlines, and the difference is your own timetable.
Every one of these clocks is trivially easy for software and genuinely hard for a person with a clipboard. This is the least glamorous argument for building something and by some distance the most reliable one.
The price list you are not allowed to edit
One more Baltimore rule, and it is the one that reframes what a pricing table even is.
City Code §22-8 is titled “Charges,” and it does not cap anything. What it does instead is this: every person providing towing services must, at the time of license application, “file with the Department a schedule setting forth the applicant's proposed charges for towing and for any services incident to towing.” Those charges “may be measured by mileage, time, and type of service or may be measured on a flat fee basis.” And then §22-8(c): “These charges shall not be changed without filing with the Department an amended schedule showing the charges proposed.”
Read that as a builder and it lands differently than it does as a lawyer. Your price list is a document on file at City Hall. Changing a price is not a database update; it is a filing event. There is a version of your rate card that is authoritative and it is not the one in your software.
Then pair it with §22-10(a)(2), which requires the work order statement given to the customer to carry “the towing charge and the basis for such charge” along with the daily storage rate and any other fees. So the receipt must state not just the number but the rule that produced it — and that rule has to match a schedule sitting in a filing cabinet at 100 N. Holliday Street.
Your invoice has to be able to explain itself against a document held by a regulator. No product in this market models a rate card as a versioned, dated, filed artifact, because no other trade needs one.
The correct data model is not complicated and it is completely absent from every platform I looked at: rate schedules as versioned records with an effective date and a filing date, prices derived from the schedule in force on the date of the tow rather than the date of the invoice, and the basis string generated from the same rule that computed the number. Build it once and re-pricing becomes a safe operation. Leave it out and every rate change quietly invalidates your historical invoices, which is fine right up until somebody asks about a tow from March.
While we are in Subtitle 22, one small thing that made me smile. §22-10(c)(2)(v) requires the daily log to include “additional pertinent information, other than financial, as required by the Board.” There is no Board. Ordinance 25-013 moved this function to the Department of Consumer Protection and Business Licensing, and §22-1 — the definitions section, rewritten by the same ordinance — defines Department, License, Motor vehicle, Person, Police Department, Storage, Towing, Towing service and Tow truck operator. It does not define “Board.” The old Board of Licenses for Towing Services survives in exactly one cross-reference that the rewrite did not catch. It is harmless, and it is not the first time in this series that we have found a dangling reference inside a freshly amended instrument. If you are building against a statute, read the definitions section first and check that every capitalized term in the operative text appears in it.
What Maryland does not tax, and what it does
The tax position is simple and demonstrable, and the demonstration is one search over the compiled Tax-General Article.
The words roadside, wrecker, vehicle recovery and impound appear zero times in the entire article. Towing appears exactly once, inside a vehicle-classification definition about a truck under three-quarter-ton capacity pulling a camping trailer. Tow truck appears exactly once, in the definition of short-term vehicle rental, and it appears there only to say that renting one is not a short-term vehicle rental for surcharge purposes. Towing labor is not among Maryland's enumerated taxable services, and the only time the tax code says the words at all, it is excluding you from something.
Your software is a different matter. Since 1 July 2025, Tax-General §11–101(m)(14) and (15) bring data and information technology services under NAICS 518, 519 and 5415, and software publishing under NAICS 5132, into the tax base at 3% under §11–104(l)(1). So the tow is untaxed and the dispatch platform that booked it is taxed. On Towbook Ultimate+ that is about $115 a year, which is not the point; the point is §11–104(l)(2), which provides that where two rates could apply, the higher governs. A vendor that bundles hardware, a GPS unit or text messaging into a single subscription line can move that whole line from 3% to 6%. If your invoice has one number on it, ask for it itemized.
What custom actually costs
We publish our prices, so here they are against the problem described above.
| Package | From | What it means here |
|---|---|---|
| Prototype Sprint | $3,500 | One week, working software. Usually the drop-versus-tow decision on the driver's phone — position, timestamp, photographs, the derived ceiling — run against a month of your real calls so you can see what your actual drop rate is. |
| Online Store | $6,000 | The release counter as a real checkout: the §21–10A–05(c) fallback chain implemented properly, declines distinguished from processing failures and both written to the record, account customers on bank payment, and a pay-before-you-arrive link that turns a 3.3% keyed transaction into a 2.6% one. |
| Custom App | $12,000 | The field half: pre-tow authorization capture with the photographic evidence §21–10A–04(a)(5)(iii) requires, the lot-boundary check, per-jurisdiction radius limits enforced at dispatch, and the work order statement generated with its basis string. |
| Operations System | $12,000 | All of it joined up: versioned filed rate schedules, the eight clocks as scheduled jobs with the 48-hour notice reversal handled automatically, the two-year log as a query, and a sync back to whichever dispatch platform you keep. |
The comparison matters more than the price. A $12,000 operations build sits against a card bill of $28,836 a year and a treble-damages exposure of $900 on every mispriced $300 release. It does not have to prevent very much to pay for itself.
What we would actually build
Not a dispatch platform. Towbook is $109 to $429 a month with a sixty-row feature matrix published in the open, and rebuilding call taking, driver assignment, mapping, mileage and motor club billing would be indefensible. What we would build is the layer underneath, and it starts with one decision: the drop is a first-class transaction type, not a discount.
That single change propagates further than it sounds. A drop has its own ceiling, derived from the full-tow ceiling, which is itself derived from the city's police-tow fee — three values, stored separately, each with an effective date. It has its own evidence requirements, which have to be captured before release rather than reconstructed after. It generates no storage, so it touches none of the storage clocks. It still consumes a call on your vendor's meter, which means your own reporting has to show cost per call and revenue per call separately, because they diverge exactly where the money is.
Around that sit four things, each cheap on its own and each nearly impossible to bolt on later.
The authorization record, captured before the vehicle moves: the name of the person authorizing, the statement that the tow is at the lot owner's request, and the photographic evidence of the violation. §21–10A–04(a)(5) makes these a condition of the tow being lawful, not paperwork to be completed at the yard. If the photographs are not on the phone before the hook goes on, the tow is defective and no later document fixes it.
The jurisdiction layer, resolved from the pickup location rather than from a company-wide setting: which radius applies, which reclamation hours apply, which ceiling applies, which police department gets the one-hour notification. One dispatch screen, three rulebooks, decided by a point on a map.
The clock engine, which is genuinely just scheduled jobs and a state field, but which has to include the awkward one: the 48-hour reversal that removes the notice cost from an invoice already issued. Build the invoice as a projection over events and this is trivial. Build it as a document and it is a nightmare you will discover in month four.
And the payment layer described above, where the only real requirement is that the system knows the difference between the customer's card failing and yours.
The reporting then comes almost free. The two-year log is a query. The work order statement is a template over the same records. And the number the owner actually wants — what share of dispatched calls ended in a drop, by lot, by property manager, by time of day — falls out of the data model without anybody building a report for it. That number is the one I would put on the wall. It tells you which contracts are worth having.
Build, buy, or both
The honest answer for almost every towing company in the Baltimore metro is both, and the split here is cleaner than in most trades.
- Buy the dispatch platform. Call taking, driver assignment, mapping, mileage, impound inventory and motor club billing are solved and cheap. At $109 to $429 a month, rebuilding any of it is indefensible.
- Build the drop. A first-class transaction type with a derived ceiling, position and timestamp at the moment of release, and its own evidence trail.
- Build the jurisdiction layer. Radius, hours, ceiling and notification recipient resolved from the pickup point, not from a global setting.
- Build the clocks. Eight of them, six start points, and one that reaches back into an invoice you already sent.
- Build the checkout. Two card brands, a working ATM or a check, and a system that can prove which branch of §21–10A–05(c) it was standing in.
- Keep the paper for licensing. The annual per-truck license, the $20,000 bond and the insurance certificates are a folder and a calendar reminder. That is genuinely the right tool.
If you take one thing from this article, make it the drop rate, because it is the largest number nobody is measuring. If you take two, make the second the payment mix, because it is the largest number you can change this quarter. And if you take three, make the third this: the dispatcher in that gravel yard was asking exactly the right question. Are you off the lot yet. Everything downstream — the price, the clocks, the notices, the storage, the exposure — is decided by the answer, and at the moment it lives in a radio call that nobody records.
Who we are
We are a small studio in Baltimore. We build custom web apps, online stores and operations systems at fixed prices, we hand over the source code, and we tell people to keep their existing software when keeping it is the right answer — which, in this trade, it almost always is for dispatch and never is for the drop.
If you run a towing, recovery or roadside assistance company anywhere in the metro and any of the above sounded like your Tuesday, book a free call. Bring last month's call list and a card processing statement. We will work out what share of your calls ended in a drop, what your payment mix actually costs you, and what we would build — with the fixed price attached before you decide anything.
This article describes Maryland and Baltimore City law as we read it in August 2026 and is not tax, legal or regulatory advice. Md. Transportation Article Title 21 Subtitle 10A, Baltimore City Code Article 15 Subtitle 22 and Article 31, Howard County Code §17.600, and Tax-General §§11–101 and 11–104 all change, and the Baltimore trespass ceiling is a derived figure that moves whenever the city's police-tow fee moves. Establishment data is County Business Patterns 2023 (NAICS 488410) and counts only establishments with paid employees. Vendor prices and HTTP status codes were read from public pages on 18 August 2026 and change without notice; where a vendor's page did not resolve or carried no figure, we have said so rather than quoting an aggregator. Verify your own position with the Baltimore City Department of Consumer Protection and Business Licensing, the Maryland Motor Vehicle Administration, the Comptroller of Maryland, or your own advisers before relying on anything here.