The shops this is actually about
There is a sentence in the Census data for this trade that I did not expect to write. In the 2023 County Business Patterns file — the Bureau's count of establishments with paid employees, which is the caveat that always matters in a trade full of one-person operations — Maryland has 66 sign manufacturing establishments, employing 956 people on an annual payroll of $59,740,000. Baltimore County has fourteen of them. Anne Arundel has ten. Prince George's has ten. Harford has six, Frederick six, Carroll five, Montgomery five, Howard four, Charles three, Worcester three.
Baltimore City has zero.
Not a suppressed cell, not a rounding artifact: there is no row at all for the city under that code. The jurisdiction with the most storefronts, the most institutional buildings, the most wayfinding, the most vehicle graphics rolling past a stadium twice a week, has no sign manufacturer on the books with a single employee on a payroll. Every one of those signs is fabricated somewhere on the far side of the Beltway and trucked back in.
What the city does have is the front half of the process. It holds 11 of Maryland's 29 business service centers and copy shops — 38% of the state's total — and 5 of its 13 printing-support establishments, another 38%. It holds 38 of the state's 278 graphic design firms, second only to Montgomery County's 76 and well ahead of Baltimore County's 30. And it holds 19 commercial printers with 470 employees and $27,490,000 of payroll, plus 9 screen printers, which is 27% of every screen printing establishment in Maryland.
Put plainly: Baltimore City designs and prints, and the counties fabricate. That is a real division of labor with a real consequence for software, because it means the typical city shop is not a factory. It is a small business that takes in a file, turns it into a product, and either runs it on a press in the back or sends it out to be cut and welded in Rosedale. Its software problem is a problem of orders, proofs, specifications and approvals — not of machine scheduling.
| Industry (NAICS) | Maryland est. | MD employees | MD payroll | Baltimore City est. | City share |
|---|---|---|---|---|---|
| Commercial printing, exc. screen and books (323111) | 200 | 4,823 | $291,107,000 | 19 | 9.5% |
| Commercial screen printing (323113) | 33 | 612 | $35,682,000 | 9 | 27.3% |
| Support activities for printing (323120) | 13 | 180 | $7,269,000 | 5 | 38.5% |
| Sign manufacturing (339950) | 66 | 956 | $59,740,000 | 0 | 0.0% |
| Graphic design services (541430) | 278 | 824 | $45,523,000 | 38 | 13.7% |
| Business service centers, incl. copy shops (561439) | 29 | 231 | $9,541,000 | 11 | 37.9% |
Two more numbers from that file are worth a moment. Maryland is 1.833% of the national population, using the Census Bureau's 2025 vintage estimates of 6,265,347 here against 341,784,857 nationally. If the state carried its population's share of the country's 4,988 sign manufacturers it would have about 91; it has 66, roughly 72% of the expected number. Commercial printing runs the same way: an expected 255 against an actual 200, about 78%. Whatever the cause — consolidation, the pull of the Washington market, the long decline of run-length printing — the practical reading for an owner here is that the catchment per shop is wider than the national average. That is an argument for selling beyond walking distance, which is to say an argument about an online store.
Three trades sharing a front door
Almost every shop I have looked at in this trade is doing at least two of three quite different jobs, and the software friction comes from the seams between them.
There is commercial print: business cards, forms, booklets, direct mail, the work where the unit is a run length and the estimate is a function of quantity, stock, sides and finishing. There is decoration: apparel, promotional products, the work where the unit is a garment and the estimate is a function of colors, placements and a setup charge that has to be amortized across a quantity nobody has confirmed yet. And there is signage and wayfinding: the work where the unit is an installed object, the estimate includes a site visit and a permit, and the specification is written by somebody who is not your customer.
Those three have different units of work, different margins, different failure modes and, crucially, different definitions of “done.” A print job is done when it is boxed. A decorated order is done when it is counted. A sign is done when an inspector says so. Any system that models all three as an order with lines will be fighting one of them permanently, and in my experience it is always the third one, because the third one is the only one where a government has an opinion about the product.
What the platforms charge, and what the meter is counting
On 14 September 2026 I checked the published pricing pages of the vendors a Baltimore print or sign shop would realistically shortlist: shop management systems, web-to-print storefronts, proofing tools, general e-commerce platforms and, because of everything in the second half of this article, the accessibility widgets that are sold against exactly the duty these shops' customers are about to face. Forty-five URLs.
The result is the usual one for this series, with one twist. The shop-management tier is unusually generous by the standards of small-business software — four vendors print complete ladders — while the web-to-print tier, the part that actually sells online, is almost entirely dark.
cyrious.com/pricing answers 404. So do printiq.com/pricing, aleyant.com/pricing, onprintshop.com/pricing, designnbuy.com/pricing, infigo.net/pricing, pagedna.com/pricing and signagent.com/pricing. printavo.com/pricing returns 403 with an 882-byte body. signtracker.com/pricing times out entirely. Those eight products are the spine of the web-to-print market, and between them they publish nothing.
Two results are worth naming for their own sake. tharstern.com/pricing returns a clean 200 — at printepssw.com/pricing, because Tharstern now sits inside ePS, and the redirect is the only public notice of it you get from that URL. And shopworks.com/pricing redirects to a blog post titled Pricing Wars: Is It Worth the Fight?, which is an article about how shops should price their own work. I laughed, and then I thought about it for a while, because it is a fair description of what the whole category does: it will talk to you at length about pricing, as a topic.
Six vendors do publish, and between them they show you every meter this trade gets billed on.
| Vendor | What it is | Published price | What the meter counts |
|---|---|---|---|
| shopVOX | Shop management for sign, print and apparel | Express $109/mo + $29/user · PRO $249/mo + $49/user | A base fee plus named users, then modules |
| Corebridge | Shop management, wide format and sign | $129 · $339 · $549 · $899/mo (from $99 annual) | User bands, plus a one-time onboarding fee |
| Teesom | Decorated-apparel shop management | $77 (1 user) to $718 (30 users)/mo | Users only, in nine published bands |
| InkSoft | Online stores for decorators | Standard $314/mo · Unlimited $419/mo | Feature tier; Standard caps at 100 active stores |
| Ziflow | Online proofing and approval | Free · Standard $199/mo · Pro $329/mo, billed annually | Feature tier and seats |
| BigCommerce | General storefront | Core $29 · Growth $79 · Scale $299/mo annual | Trailing GMV, with automatic plan upgrades |
The online store is sold by the hundred orders
shopVOX publishes the clearest add-on list in this market, and one line on it is the single most important number in this article for anyone thinking about selling online. The base products are $109 and $249 a month plus $29 and $49 per user; at five users that is $3,048 and $5,928 a year, a 1.94× step for the same five people. Onboarding on PRO starts at $499. Fine so far, and honestly priced for what it does.
Then the add-on column: inventory management at $299/mo plus a $999 setup, webhooks at $250/mo, service jobs at $49/mo, an S3 connection at $50/mo, and e-commerce at $199 a month per 100 orders, plus a $299 setup fee.
Per hundred orders. Not per store, not per seat, not per gigabyte. The unit price of an order through your own website is $1.99, and it does not fall. A shop doing 100 online orders a month pays $199; at 300 it pays $597 a month, or $7,164 a year; at 1,200 it pays $2,388 a month. Every meter in software has a shape, and most of them at least flatten as you grow. This one is a straight line through the origin.
Set it against a generic order-routing tool to see what the shape is worth. Order Desk publishes Starter at $20/mo plus 25¢ an order, Pro at $60 plus 10¢, and Plus at $125 plus 5¢. At 300 orders a month the Plus plan is $140.00 against $597.00 — 4.26 times as much for the metered module, a gap of $5,484 a year. At 600 orders it is 7.70×. At 1,200 it is 12.91×.
| Online orders per month | shopVOX e-commerce | Order Desk Plus | Ratio | Annual gap |
|---|---|---|---|---|
| 100 | $199.00 | $130.00 | 1.53× | $828 |
| 300 | $597.00 | $140.00 | 4.26× | $5,484 |
| 600 | $1,194.00 | $155.00 | 7.70× | $12,468 |
| 1,200 | $2,388.00 | $185.00 | 12.91× | $26,436 |
I want to be fair here, because the comparison is not quite like for like: the shopVOX module is an integrated storefront that knows your products and pushes orders straight into your job board, and Order Desk is a router that assumes you already have a store. That integration is worth real money. But it is not worth a price that rises without limit against a job whose marginal cost to the vendor is essentially zero, and the gap at 1,200 orders a month — $26,436 a year — is four times the cost of building the storefront outright.
The per-seat ladder that bends the wrong way
Teesom publishes nine user bands, which is unusual and useful, because it lets you see the curve instead of three points on it. One user is $77 a month. Two is $111. Three is $143. Five is $178. Ten is $293. Fifteen is $373. Twenty is $488. Twenty-five is $603. Thirty is $718.
Divide through and the per-user price collapses from $77.00 at one seat to $35.60 at five, $29.30 at ten and $23.93 at thirty. That is a normal, healthy volume curve, and it is also a warning: the smallest shop in this trade pays 3.2 times the per-seat rate of the largest. A two-person Hampden screen printer and a thirty-person operation in Dundalk are buying the same software at wildly different unit prices, and the smaller one is subsidising the bigger one's discount.
That is not a scandal; it is how per-seat pricing works everywhere. But it is a specific argument in this trade, because a small shop's headcount is not a proxy for its complexity. A three-person sign shop doing municipal wayfinding has a harder specification problem than a twenty-person shop running one press, and it is paying for the privilege of being small while carrying the harder job.
The part no national platform models
Everything above is ordinary software economics. What follows is the part that makes this trade different from every other retail business we have written about, and none of it appears in any product in the tables above.
Two fee schedules for one act, and they cross at 35 square feet
Baltimore City's permit fees for construction work live in §109.6.1 of the Building, Fire, and Related Codes. Item j covers “erecting, placing, hanging, or reconstructing signs,” and it is a five-band step table: $25 up to 10 square feet, $35 over 10 to 150, $60 over 150 to 200, $150 over 200 to 500, and $250 over 500. The table has a ceiling. A sign of 600 square feet and a sign of 6,000 square feet both cost $250.
Item k, immediately below it, covers installing on-premises advertising signs, and it is written completely differently:
For erecting, placing, hanging, or reconstructing any consolidated area of signage, as described in Baltimore City Zoning Code Title 17, Subtitle 3 {“Sign Dimension and Quantity Measurement Methodology”}, the fee is $1 a square foot, with a minimum of $13 for each consolidated area of signage.
One dollar a square foot, no ceiling. And then a sentence that applies to both: “No fee is charged for signs less than 100 square feet and used exclusively for advertising the sale or lease of the property on which they are posted.” Plus a separate line: repairing, painting and rehanging a sign in the same place is $25 each.
Run the two schedules against each other and they cross at exactly 35 square feet, where both produce $35. Below that point the step table is the expensive one: a 6-square-foot plaque is $25 under item j and $13 under item k, 1.92 times as much. Above it the per-square-foot rate runs away: at 150 square feet it is $150 against $35, a gap of $115; at 500 square feet, $500 against $150; at 1,000 square feet, $1,000 against $250, a gap of $750 and a ratio of 4.0×.
| Sign area (sq ft) | Item j — step table | Item k — $1/sq ft, $13 min | Difference | Ratio (k ÷ j) |
|---|---|---|---|---|
| 6 | $25 | $13 | −$12 | 0.52× |
| 25 | $35 | $25 | −$10 | 0.71× |
| 35 | $35 | $35 | $0 | 1.00× |
| 100 | $35 | $100 | +$65 | 2.86× |
| 150 | $35 | $150 | +$115 | 4.29× |
| 200 | $60 | $200 | +$140 | 3.33× |
| 500 | $150 | $500 | +$350 | 3.33× |
| 1,000 | $250 | $1,000 | +$750 | 4.00× |
Which schedule applies turns on whether the thing you are hanging is an “on-premises advertising sign.” That is not a property of the aluminum. It is a property of the message. And the exemption sentence goes further still: it is not enough for the sign to be small, it must be “used exclusively for advertising the sale or lease of the property on which they are posted.”
So take one object — a 99-square-foot panel, same substrate, same frame, same crew, same wall — and give it three different sentences. If it advertises the sale of the building, the fee is $0. If it is some other kind of sign, item j says $35. If it advertises the business on the premises, item k says $99. One product, three prices, and the variable is the copy.
I am not going to pretend I can tell you which line a given job lands on; that is what the permit counter is for, and reasonable examiners can and do read these differently. The point for software is simpler and it is not in dispute: the permit line on your estimate is not a lookup on area. It is a lookup on area and a classification of the message, and a quoting tool that stores the message as a free-text notes field cannot compute it. Every shop I know handles this by having one person who knows, which works beautifully right up until that person is on holiday in August.
The same words, two different areas
Underneath the fee sits a measurement question that is, if anything, sharper. Baltimore's zoning code specifies how to compute the area of a sign, and it specifies two different methods depending on how the sign is built. Under §17–302(a), for a sign on a background, “the entire area of the framework or background of the sign is calculated as sign area.” Under §17–302(b), for freestanding letters or logos, the area is “the total area of each square, circle, rectangle, triangle, or combination of these, that encompasses each individual letter or logo.”
Take a storefront wordmark twelve feet wide. Printed on an aluminum panel three feet tall, it is 36 square feet. Built as sixteen individually mounted channel letters with an 18-inch cap height and roughly 12 inches of average width, each letter encloses 1.50 square feet and the sign is 24 square feet — a third less regulated area for the same words at the same size on the same wall. Under item k that is $36 against $24, which is trivial. Against a lot's cumulative area cap under §17–306, it is twelve square feet of headroom you either have or do not have for the next sign.
There is a third measurement rule that is even more physical. §17–304(b) says that where two faces are placed back to back and “are nowhere more than 2 feet apart,” the area counts once. So a double-faced blade sign with 24-square-foot faces mounted ten inches apart has a regulated area of 24 square feet; push the faces 25 inches apart to fit a deeper illuminated cabinet and the regulated area becomes 48. The depth of the sign — a dimension nobody thinks of as regulated at all — doubles the number that the fee and the cap are computed from.
These are not gotchas. They are perfectly sensible rules, written by people who were thinking about visual clutter rather than about databases. But they mean that in this trade, area is not a measurement, it is a computation over the construction method, and the construction method is a field on your quote.
A catalog that is really a whitelist
Most product catalogs are permissive: here are the things we make, and you may order any of them. Title 17 inverts that. Its stated purpose, in §17–101(c)(9), is:
to prohibit all signs not expressly authorized by this title, to provide for the maintenance of signs, and to provide for the enforcement of the provisions of this title.
And the operative rule in §17–201(b)(2) makes the mechanism explicit:
A sign is allowed within a zoning district only if and to the extent that: (i) Table 17-201: Sign Regulations expressly lists that sign type as allowed within that zoning district; and (ii) the sign complies with all other requirements of this title applicable to that sign type.
Title 17 then defines and separately regulates seventeen sign types, each with its own section: A-frame, alcoholic beverage and cigarette advertising, attention-getting devices, awning or canopy, banner, billboard, electronic, freestanding, moving or flashing, obscene, painted/mural, portable, projecting, roof, wall and window signs. That is a closed enumeration, joined against a district column, joined against a per-type maximum area and a per-type maximum quantity.
In database terms your catalog is not a product table. It is a join: (sign type × zoning district) gated by a whitelist you do not control, then constrained by a per-type quantity, then constrained again by the lot's cumulative cap. A sign shop's quoting system that cannot answer “may this customer have this, here, at all?” is not quoting. It is guessing, and the guess is discovered at the permit counter after the artwork has been approved.
A couple of the seventeen types are worth reading for pleasure alone. §17–413, on portable signs, is one sentence: “Portable signs may not be displayed outside of a building.” And §17–401, on A-frames, regulates a product by the clock and the weather:
An A-frame sign may only be placed outdoors between hours of operation. The sign must be stored indoors at all other times. … An A-frame sign may not be placed outdoors during high-wind or heavy-rain conditions.
An A-frame is the cheapest thing on a sign shop's price list and the only one whose compliance is a schedule. It must also, under §17–401(b)(1)(ii), sit within 30 feet of the primary entrance and not “violate standards of accessibility as required by the ADA or other accessibility codes” — which is the first place in the city's sign rules where the federal standard we are about to get to shows up as a constraint on where you may put a physical object on a sidewalk.
Electronic signs have a minimum dwell time
§17–407 deserves a paragraph because it is the clearest case in the whole title of a regulator specifying software. Electronic signs come in five categories by area — Category I no larger than 15 square feet, II 50, III 750, IV 5,000, V 10,500 — which is a closed enum with a factor of 700 between its ends. And then subsection (c):
Text and digital graphics must be static or have a minimum dwell time of 8 seconds. Digital animation and videos must have a maximum loop time of 1 minute.
Eight seconds and sixty seconds. If you sell an electronic sign in Baltimore you are not shipping hardware; you are shipping a content scheduler whose minimum frame duration is set by municipal ordinance, and the customer will change the content weekly for the next ten years without ever reading that sentence. Subsection (d)(3)(iii) adds that where an electronic component is integrated into another sign type, it “may not exceed 25% of the maximum sign area for the other sign type” — a ratio constraint between two areas on one physical object.
Two square feet of free compliance
The provision that ties the two halves of this article together is §17–309(b), and it is the reason I picked this trade to write about. It says that a sign required by the City Building, Fire, and Related Codes, and 2 square feet or less, does not count toward the allowable maximum quantity, the maximum area per sign, or the maximum cumulative area of signage on the lot. Anything over 2 square feet is subject to the ordinary rules.
So the city gives every property a small, fixed allowance of compliance signage that is free of the commercial signage budget — and it is measured in square feet, at exactly two. A standard tactile restroom sign at six inches by eight is 0.33 square feet and sails under. A 12-inch by 24-inch panel is exactly 2.00 square feet and sits on the line. A 13-inch by 24-inch panel is 2.17 square feet and now competes for space with your storefront lettering.
I have never met a sign-shop quoting tool that knows this. But it is a real number in a real decision: when a general contractor asks for an area-of-refuge instruction sign and you are choosing between two stock sizes, one of those sizes spends the building's commercial signage allowance and the other does not.
The federal half, where the product is a typeface
Now the other side of the same shop. The signs above are regulated by a city that cares where they go. The signs below are regulated by a federal standard that cares what they look like, to the sixteenth of an inch.
Section 703 is a schema, and it closes
The 2010 ADA Standards for Accessible Design specify signage in §703, and the specification is not guidance. It is a closed set of numeric constraints of exactly the kind a product configurator is made of — except that almost no configurator in this trade implements it, and the ones that do implement it as a preset rather than as a rule.
| Provision | Raised (tactile) characters | Visual characters |
|---|---|---|
| Relief | 1/32 in minimum above background (703.2.1) | — |
| Case | Uppercase only (703.2.2) | Upper, lower or both (703.5.2) |
| Style | Sans serif; not italic, oblique, script, highly decorative (703.2.3) | Conventional in form; same exclusions (703.5.3) |
| Proportion | Width of “O” 55%–110% of height of “I” (703.2.4) | Identical rule (703.5.4) |
| Height | 5/8 in to 2 in (703.2.5); 1/2 in minimum where paired with separate visual characters | Per Table 703.5.5, no maximum (703.5.5) |
| Stroke | 15% maximum of height (703.2.6) | 10%–30% of height (703.5.7) |
| Character spacing | 1/8 in min (rectangular sections), 4× stroke max; 3/8 in from borders (703.2.7) | 10%–35% of height (703.5.8) |
| Line spacing | 135%–170% of height (703.2.8) | 135%–170% of height (703.5.9) |
| Braille | Contracted Grade 2; dot base 0.059–0.063 in; below the text, 3/8 in clear (703.3) | — |
| Mounting | 48 in min to 60 in max above floor, baseline of lowest and highest character (703.4.1) | 40 in minimum above floor (703.5.6) |
Read the stroke row twice. A tactile character's stroke may be no more than 15% of its height. A visual character's stroke must be between 10% and 30%. On the very common sign that carries both — raised characters with braille, plus the same information in larger visual type — a designer who wants one typeface for the whole plaque is working inside the intersection, which is 10% to 15%. That is a five-point window out of the visual standard's twenty-point range: a quarter of the available room, and it is stated nowhere. It falls out of reading two sections together.
The braille table is the other place the standard stops being advisory. Dot base diameter 0.059 to 0.063 inch. Dot height 0.025 to 0.037. Distance between two dots in the same cell 0.090 to 0.100. Corresponding dots in adjacent cells 0.241 to 0.300. Corresponding dots in the cell directly below 0.395 to 0.400 — a five-thousandths-of-an-inch window. Those are manufacturing tolerances written into a civil rights standard, and a shop quoting raster braille versus routed-and-filled is quoting two different abilities to hold them.
Seventeen feet, where one sign stops being able to be two signs
Table 703.5.5 sets the minimum height of a visual character as a function of two variables: how high the character is mounted, and how far away the nearest point a viewer can stand is. In the lowest mounting band — 40 to 70 inches above the floor — the minimum is 5/8 inch up to a viewing distance of 72 inches, and beyond that it is “5/8 inch, plus 1/8 inch per foot of viewing distance above 72 inches.” In the middle band it is 2 inches, plus the same 1/8 inch per foot beyond 180 inches. Above 120 inches of mounting height it starts at 3 inches.
Now put that beside 703.2.5, which caps a raised character at 2 inches. In the lowest band, the visual minimum reaches 2 inches at a viewing distance of 204 inches — exactly 17 feet: five-eighths plus eleven eighths. In the middle band it is already at 2 inches and passes it at 15 feet. Above 120 inches of mounting, the visual minimum of 3 inches exceeds the tactile maximum at any distance at all. At 30 feet of viewing distance in the lowest band the visual minimum is 3.625 inches, which is 1.81 times what a tactile character is allowed to be.
Which is to say: past about seventeen feet, a single sign can no longer legally be both a tactile sign and the visual sign for the same space. The standard anticipates this in 703.1, which permits “either one sign with both visual and tactile characters, or two separate signs.” So the answer exists. But notice what that means commercially. The decision to quote one plaque or two is not an aesthetic preference and it is not the architect's whim; it is a computation over mounting height and the distance to the nearest obstruction, and it changes the bill of materials, the installation time and the price. That computation belongs in the estimate, and in every shop I have seen it happens in somebody's head, on site, after the quote went out.
The truck marking rule has no inches in it
Here is the opposite case, and it is the one that catches shops out in the other direction. Vehicle lettering is bread-and-butter work for a sign shop, and every shop in America sells “DOT numbers, two-inch letters.” Two inches is the number the whole trade quotes.
It is not in the federal rule. 49 CFR 390.21(c) says the marking must:
(1) Appear on both sides of the self-propelled CMV; (2) Be in letters that contrast sharply in color with the background on which the letters are placed; (3) Be readily legible, during daylight hours, from a distance of 50 feet (15.24 meters) while the CMV is stationary; and (4) Be kept and maintained in a manner that retains the legibility required by paragraph (c)(3) of this section.
There is no dimension anywhere in it. The federal specification for the most commonly sold regulated sign in the country is a performance standard: legible, by a human, at fifty feet, in daylight, stationary. Two inches is a sensible industry convention for meeting it — and individual states do impose their own dimensional rules — but the rule itself specifies an outcome, not a size.
Set that against §703 and you have the two poles this trade lives between. One federal standard specifies a sign to the thousandth of an inch and leaves nothing to judgement. Another specifies the same category of product purely by whether a stranger can read it from across a parking lot. A product record with a compliance column can store the first. It cannot store the second, because the second is not a value; it is a claim about perception. The honest software answer is to store the evidence — the specification quoted, the size supplied, the date, the person who approved it — rather than a boolean that means nothing.
The deadline that moved four days before it arrived
And now the part that has almost nothing to do with vinyl, and everything to do with why a print and sign shop should care about who builds its website.
In April 2024 the Department of Justice published a final rule under Title II of the ADA adding Subpart H to 28 CFR Part 35. §35.200(a) requires a public entity to ensure that
Web content that a public entity provides or makes available, directly or through contractual, licensing, or other arrangements; and … Mobile apps that a public entity provides or makes available, directly or through contractual, licensing, or other arrangements
are readily accessible to and usable by individuals with disabilities, conforming to WCAG 2.1 Level A and AA. The original compliance dates were 24 April 2026 for entities with a total population of 50,000 or more and 26 April 2027 for everyone smaller.
On 20 April 2026 — four days before the first of those dates — the Department published an interim final rule at 91 FR 20902, AG Order No. 6742-2026, effective immediately on publication, extending both dates by about a year. The rule as it stands today reads 26 April 2027 for populations of 50,000 or more and 26 April 2028 for smaller entities and special district governments. Comments closed on 22 June 2026. The Department's own account of why is unusually candid: higher education associations responding to an OMB deregulation request asked for a delay, and the Small Business Administration's Office of Advocacy told OMB it believed the Department “underestimated the costs and burden of the 2024 final rule for small public entities.” Nothing about the substantive standard changed. Only the date.
Here is why that is a sign shop's problem. Using the Census Bureau's 2025 vintage estimates, 18 of Maryland's 24 county-level jurisdictions are at or above 50,000 residents and therefore on the 2027 date; six are below it and on 2028. Baltimore City is at 569,997. The two closest above the line are Worcester at 54,459 and Queen Anne's at 54,448 — both within about 4,500 people of falling into the later group, which is a reminder that this threshold moves with a population estimate nobody at your shop is tracking.
| Group | Jurisdictions | Compliance date | Was |
|---|---|---|---|
| Population 50,000 or more | 18 of 24 — incl. Baltimore City (569,997), Baltimore County (847,650), Anne Arundel (603,380), Howard (339,183) | 26 April 2027 | 24 April 2026 |
| Under 50,000, or a special district government | 6 — Talbot (38,238), Caroline (34,116), Dorchester (33,628), Garrett (28,370), Somerset (24,973), Kent (19,565) | 26 April 2028 | 26 April 2027 |
If you host a company store for a school district, a county agency, a public university or a city department — and in this trade, those are the best accounts there are, because they order the same items forever — then the portal you give them is web content that entity “provides or makes available … through contractual, licensing, or other arrangements.” The duty is theirs. The conformance is yours to deliver, in software you very probably do not control. From today, that is 224 days.
What Maryland already makes you warrant
Maryland did not wait for the federal rule. Under State Finance and Procurement §3.5–311, the Secretary of Information Technology must maintain a nonvisual access clause, and COMAR 21.05.08.05 makes it a mandatory provision of every state invitation for bids or request for proposals for new or upgraded information and communication technology. The clause is a warranty by the bidder, and it ends like this:
The bidder or offeror further warrants that the cost, if any, of modifying the information and communication technology for compatibility with software and hardware used for nonvisual access will not increase the cost of the information and communication technology by more than 15 percent.
That sentence is remarkable and I have not seen its equal in this series. Most accessibility law uses a judgement standard — “undue burden,” “fundamental alteration,” terms that a court weighs afterwards. Maryland put a number on it. Fifteen percent. And §3.5–311(b)(2)(ii) uses the same number in the other direction: the clause is not required at all if remediation would raise the price of the procurement by more than 15%.
The enforcement schedule is equally concrete. Within 18 months of award the Secretary or a designee determines whether the technology meets the COMAR 14.33.02 standards. If it does not, the vendor is notified in writing and has 12 months at its own expense to fix it. Fail that, and the civil penalty is up to $5,000 for a first offense and $10,000 for a subsequent one, plus an obligation to indemnify the State. Thirty months from signature to penalty, on a clock that starts without anyone telling you it has started.
Put the two numbers side by side, because together they are the whole build-or-buy argument for this section. On a $25,000 portal, 15% is $3,750. On our $6,000 online store, it is $900. A vendor who controls the code can make that warranty honestly. A shop reselling a platform it cannot modify is warranting somebody else's roadmap.
Three versions of one standard, in one procurement
There is a wrinkle here that is worth knowing before you sign anything, and it took a while to find because the regulation that causes it is one sentence long. COMAR 14.33.02.05, the Maryland standard for software, reads in full:
Software ICT shall be considered nonvisually accessible if the software ICT meets the requirements of 36 CFR §1194.C.5, which is incorporated by reference.
That points at the Access Board's revised Section 508 standards. And those standards, at E205.4 and E207.2 of Appendix A to 36 CFR Part 1194, require conformance to “Level A and Level AA Success Criteria and Conformance Requirements in WCAG 2.0.” Meanwhile the Department of Justice rule your public-entity customer is subject to requires WCAG 2.1 Level A and AA — a different version, published ten years later. And in a third place, COMAR 14.33.02.04(I)(3) borrows the flash thresholds from WCAG 2.1 Level AAA, by reference to a State Board of Education regulation.
Three references to one standard family, at three different versions and levels, inside one state's procurement rules and the federal rule sitting on top of them. It is entirely possible to satisfy the clause Maryland makes you sign and still miss the rule that binds your customer. The practical answer is not complicated — build to WCAG 2.1 AA and you clear all three — but it is the kind of thing you want to have decided deliberately rather than discovered in month nineteen.
The online store is the half that pays
Everything so far has been about the product. This section is about the storefront, because in this trade the storefront is not a shop window. It is a manufacturing intake form, and it is the single highest-leverage piece of software a print or sign shop owns.
Your customer supplies the product
Start with the structural oddity that separates web-to-print from every other kind of e-commerce: the buyer supplies the thing being made. In a normal store the merchant owns the catalog and the customer picks from it. Here the customer uploads a file, or types text into a template, and that upload is the product. Nothing about a standard cart models this well.
It creates four requirements that a generic platform treats as afterthoughts. A file has to be validated at the moment of upload — dimensions, bleed, resolution, color space, fonts, spot channels — and the failure has to be legible to somebody who is not a prepress operator. A proof has to be generated, sent, and approved, and the approval is the moment the specification stops being negotiable; that timestamp is the most commercially important record in the entire order. An artwork indemnity has to be captured, because the shop is reproducing images it did not create and cannot clear. And a revision has to be a first-class object, because “the customer changed the phone number after approval” is the most common cause of an unprofitable job in this industry and the only way to price it is to have counted it.
Ziflow, at $199 and $329 a month billed annually, exists because that second requirement is real and platforms do not meet it. That is $2,388 or $3,948 a year to add an approval step to an order your own system already knows about. It is a good product. It is also, structurally, a patch over a missing field.
The mailing list is somebody else's customer table
Variable-data work — direct mail, personalised cards, membership mailings — means that a print shop routinely holds a file containing other people's names, addresses and sometimes a great deal more. That file arrives as a CSV, sits on a server, gets merged, gets printed, and then in most shops it stays exactly where it landed, forever, because nobody ever wrote a rule that said otherwise.
Maryland now has an opinion about that. We wrote about the Maryland Online Data Privacy Act at length, and the short version for this trade is that the data your customer hands you is personal data with a purpose attached, the purpose was “print this mailing,” and a retention policy is not optional hygiene. If your store lets a customer upload a list, the store should know when to delete it. That is three lines of code and a scheduled job in a system you own, and it is a support ticket in a system you rent.
What Maryland's tax code calls a print job
One more thing worth having straight, because it surprises people who move into this trade from retail. Under Tax-General §11–101(m), a “taxable service” in Maryland begins with:
(1) fabrication, printing, or production of tangible personal property or a digital product by special order;
First item on the list. What a print shop does is not, in the tax code's framing, primarily a sale of goods; it is a taxable service, and the operative phrase is “by special order.” The same blank shirt sold off a rack and sold with a logo on it sit on two different sides of that phrase, and the thing that moves it across is a customer typing into a form field on your website.
There is a second provision that most shops never use and should. §11–101(l)(2) says that for property acquired for use in the State “by the person who assembles, fabricates, or manufactures the property,” the taxable price includes only the price of the raw materials and component parts. So when your shop makes a sign for your own storefront, wraps your own van, or prints your own trade-show graphics, the base is materials — not the value you added. An internal work order and a customer work order for the identical object are taxed on different bases, which means your job-costing system needs to know which kind of job it is looking at, and almost none of them do.
And if the shop also builds the customer's website or does their SEO, that work lands under a different heading again, at Maryland's newer 3% rate on data and information technology services rather than the 6% that the printing carries. One invoice, two rates, and the split is decided by which line item the work was written on.
An overlay is priced by visitors; the duty is measured in content
Because the deadline in the last section exists, a whole market exists to sell against it, and its pricing is the cleanest example of a mismatched meter I have found.
accessiBe publishes accessWidget at $59 a month or $490 a year for up to 5,000 website visits a month; $179 or $1,490 for up to 30,000; $479 or $3,990 for up to 100,000. UserWay publishes $490, $1,190 and $2,490 a year at the same 100,000 page-view cap, the difference between the tiers being monitoring and support rather than traffic. AudioEye's pricing page answered 429 when I checked it, so I cannot quote it.
| Plan | Monthly | Annual | Traffic cap | Per 1,000 visits/yr |
|---|---|---|---|---|
| accessiBe Micro | $59 | $490 | 5,000 visits/mo | $8.17 |
| accessiBe Growth | $179 | $1,490 | 30,000 visits/mo | $4.14 |
| accessiBe Scale | $479 | $3,990 | 100,000 visits/mo | $3.33 |
| UserWay Pro | — | $490 | 100,000 views/mo | $0.41 |
| UserWay Ultimate | — | $2,490 | 100,000 views/mo | $2.08 |
Look at what is being metered. A public entity's obligation under §35.200 is about content: the pages, documents, forms and flows it makes available. Traffic has nothing to do with it. A county portal with forty pages and modest traffic has the same conformance duty as one with forty pages and heavy traffic, and if the quiet one grows it will pay more for the identical remediation. accessiBe's own ladder makes the point: Micro to Scale is 8.12 times the price for 20 times the visits, against a page count that may not have changed at all.
UserWay also publishes managed remediation priced the way the duty actually works — by page. 100 pages, $990 a year; 500 pages, $4,490. That is $9.90 and $8.98 a page, and it is a far more honest shape for the problem. It is also, for a shop that owns its storefront's code, mostly avoidable, because the pages a web-to-print store generates are generated from templates and the remediation happens once in the template.
On the widgets themselves I will say only what the regulation says. 28 CFR 35.202 permits a conforming alternate version “only where it is not possible to make web content directly accessible due to technical or legal limitations,” and §35.200(b) requires the web content itself to comply. Nothing in Subpart H mentions overlays one way or the other. Draw your own conclusion; ours is that a script you add to a page you do not control is a weaker position than a page built right, and it costs more over five years.
| Line | Stack A | Stack B |
|---|---|---|
| Shop management | shopVOX Express, 5 users — $3,048 | shopVOX PRO, 5 users — $5,928 |
| Online store | shopVOX e-commerce, 300 orders/mo — $7,164 | InkSoft Unlimited — $5,028 |
| Storefront | included in the module | BigCommerce Growth — $948 |
| Proofing | Ziflow Standard — $2,388 | Ziflow Pro — $3,948 |
| Accessibility widget | accessiBe Growth — $1,490 | UserWay Ultimate — $2,490 |
| Total | $14,090/yr ($1,174/mo) | $18,342/yr ($1,528/mo) |
| Of which a custom build replaces | $11,042/yr | $12,414/yr |
Stack B is 1.30 times Stack A, a difference of $4,252 a year, and the two stacks buy roughly the same capability. Neither of them knows what a permit costs, how a sign's area is measured, or what the ADA requires of a character stroke. Both of them charge you for the parts that are commodity and hand you the parts that are not.
What custom actually costs
We publish our prices for the same reason I have just spent several thousand words on other people's: a number you can put in a budget is worth more than a demo. These are fixed, not estimates, and they are the same numbers on our pricing page.
| Package | Price | What it is | For a print or sign business |
|---|---|---|---|
| Prototype Sprint | $3,500 | One week, a real deployed clickable build, credited toward a full project | One product configurator with real preflight and a real proof-approval step, so you can watch a customer use it before you commit |
| Online Store | from $6,000 | A custom web-to-print storefront you own outright | Uploads, templates, per-customer company stores, proof approval, and WCAG 2.1 AA in the templates rather than in a widget |
| Custom App / Internal Tool | from $12,000 | A focused application for one job | The estimator: quantity, substrate, finishing, install, permit class and the area computation that goes with it |
| Operations System | from $12,000 | The system the business runs on | Quote, proof, job, production, install and invoice over one customer record and one artwork library |
Set that against the stacks. The layer a custom build genuinely replaces is the storefront, the proofing tool and the accessibility widget — not your shop-floor system, not your accounting, not your card processing, all of which stay exactly where they are. That replaceable layer is $11,042 a year in Stack A and $12,414 in Stack B. A $6,000 online store is therefore paid for in about six months either way, and a $12,000 build in about twelve to thirteen months.
Those are unusually short paybacks by the standards of this series, and the reason is specific rather than flattering: this trade is charged a lot for the online layer and very little for the hard parts, because the hard parts are local and no national vendor can amortize them.
What we would actually build
The design follows from everything above, and it starts with one decision: a sign is not a product, it is a specification with a location attached. In the systems we build for this trade, four things carry their own structure that a generic cart does not have.
A sign product knows its own construction method, because the construction method decides the regulated area. Panel or freestanding letters, single or double face, and the face separation in inches — and from those the system computes the area two ways and shows both, because one of them is the number on the permit application and the other is the one the customer thinks they are buying. It also knows its type against the city's enumeration, so that “may this exist here?” is a question the quote can attempt rather than a surprise at the counter.
A compliance specification is a record, not a checkbox. For an ADA plaque it carries the character height, stroke ratio, spacing, braille method, mounting height and viewing distance actually used, computed against §703 and stored with the job. For vehicle lettering it carries the size supplied and the standard it was quoted against, precisely because 390.21 has no number in it and the only defensible artifact is a record of what you did and when. Five years later, when somebody asks, the answer is a query rather than an archaeology project.
An artwork file is an object with a lifecycle: uploaded, preflighted, proofed, approved, revised, archived, and — when it carries somebody's mailing list — deleted on a schedule. The approval carries a timestamp, an identity and a rendered snapshot of exactly what was approved, because that snapshot is the difference between a reprint you absorb and a reprint you bill.
A company store is a first-class tenant, not a coupon code. Each institutional customer gets its own catalog, its own approval chain, its own budget codes and its own branding, and the templates underneath are built to WCAG 2.1 AA once, so that the twelfth store costs the same to make conformant as the first. That is the entire commercial argument for owning this layer: conformance is a fixed cost in a system you control and a recurring one in a system you rent.
Around those sit the ordinary things — estimating, scheduling, a job board the shop floor can read across the room, purchase orders to the fabricator in Rosedale, an install calendar. None of that is exotic. The exotic part is that the four objects above are usually bolted onto a data model that never expected them, which is why they break exactly where the money is: at the permit line, at the approval, at the revision, and at the audit.
Build, or keep paying
I would rather you kept a subscription that works than paid us to rebuild it. The honest test is short, and it is the only list in this article:
- Keep buying when the meter is roughly proportional to what you earn from it, when your online volume is small enough that a per-order module is cheap, when nobody in the building is retyping the same job into two systems, and when you have no institutional customers with a 2027 deadline attached to them.
- Build when the storefront is metered per order and your order count is growing, when compliance is arriving as a paid widget, when the quote that decides your margin depends on a rule that lives in one person's head, or when a public-entity customer has just asked you a question about WCAG that you could not answer.
Most shops we talk to end up in the middle: keep the shop-floor system, keep the accounting, keep the supplier relationships, and own the storefront and the estimator, which is where this trade's actual peculiarities live. That is a $6,000 to $12,000 decision, not a rip-and-replace.
When you should not call us
If your online volume is thirty orders a month and your customers are walk-ins, a metered module is genuinely cheaper than owning anything and we will tell you so. If your real problem is that the press is the bottleneck, buy press capacity, not software. If you are mid-implementation on a shop system your franchise network mandates, finish it — a half-migrated shop is worse than either end state. And if what you need is a nationwide trade printer's catalog with 4,000 SKUs behind it, buy that; we are not going to out-catalog a gang-run press.
How we work
Fixed price, agreed before we start. You talk to the people writing the code — there are two of us and no account layer. You own every line, in your repository, on your infrastructure, from the first commit. We ship in weeks, not quarters, and we start with the one screen that is costing you the most, which in this trade is almost always the estimator or the proof-approval step. If a week of work would tell us both whether the rest is worth doing, that is what the $3,500 Prototype Sprint is for, and it comes off the price of the build.
Questions we get from print and sign shop owners
How much does a sign permit cost in Baltimore City?
Section 109.6.1 of the Baltimore City Building Code prints two different rates for sign work. Item j is a five-band step table: $25 up to 10 square feet, $35 over 10 to 150, $60 over 150 to 200, $150 over 200 to 500, and $250 over 500. Item k, for installing on-premises advertising signs, is $1 a square foot with a minimum of $13 for each consolidated area of signage. Repairing, painting or rehanging a sign in the same place is $25. There is no fee at all for a sign under 100 square feet used exclusively to advertise the sale or lease of the property it stands on. The two rates are equal at exactly 35 square feet; below that the step table is dearer and above it the per-square-foot rate is, by $115 at 150 square feet and by $750 at 1,000.
How does Baltimore measure the area of a sign?
It depends on how the sign is made, not on how big it looks. Under Baltimore City Zoning Code §17–302(a) a sign on a background is measured as the entire area of the framework or background. Under §17–302(b) a sign made of freestanding letters or logos is measured as the total of the individual shapes that enclose each letter or logo. A 12-foot by 3-foot printed panel is therefore 36 square feet, while the same wordmark built as sixteen 18-inch channel letters at about 12 inches average width is roughly 24 square feet, a third less. §17–304(b) adds another twist: two faces placed back to back and nowhere more than 2 feet apart count once, so a double-faced sign that is 25 inches thick has twice the regulated area of one that is 10 inches thick.
What are the ADA requirements for signs?
Section 703 of the 2010 ADA Standards specifies tactile and visual signs in detail. Raised characters must be uppercase, sans serif, raised 1/32 inch minimum, between 5/8 inch and 2 inches tall measured on the letter I, with stroke thickness no more than 15 percent of character height, character spacing at least 1/8 inch, and line spacing 135 to 170 percent of character height. Braille must be contracted Grade 2, positioned below the text with 3/8 inch of separation, with dot base diameters between 0.059 and 0.063 inch. Tactile characters must sit between 48 and 60 inches above the floor. Visual character height is set by Table 703.5.5 as a function of mounting height and horizontal viewing distance, starting at 5/8 inch and adding 1/8 inch per foot of viewing distance beyond the band threshold.
When do websites have to meet WCAG 2.1 AA under the ADA?
For state and local government entities, 28 CFR 35.200 now sets 26 April 2027 for public entities with a total population of 50,000 or more and 26 April 2028 for smaller entities and special district governments. Those are not the original dates. The 2024 final rule set 24 April 2026 and 26 April 2027; the Department of Justice published an interim final rule at 91 FR 20902 on 20 April 2026, four days before the first deadline, extending both by roughly a year, effective on publication with comments closing 22 June 2026. The rule reaches web content a public entity provides directly or “through contractual, licensing, or other arrangements,” which includes a vendor-hosted ordering portal built for that entity.
Does Maryland require accessible software from its vendors?
Yes, and it puts a number on it. COMAR 21.05.08.05 makes a nonvisual access clause mandatory in every state invitation for bids or request for proposals for new or upgraded information and communication technology. The bidder warrants equivalent access consistent with Section 508 and COMAR 14.33.02, and warrants that the cost of modifying the technology for nonvisual access will not increase its cost by more than 15 percent. Under State Finance and Procurement §3.5–311 the Secretary of Information Technology reviews conformance within 18 months of award, the vendor then has 12 months at its own expense to fix it, and a failure can draw a civil penalty of up to $5,000 for a first offense and $10,000 for a subsequent one.
How much does print shop management software cost?
The published prices in September 2026 run from about $77 to about $900 a month before add-ons. shopVOX prints Express at $109 a month plus $29 per user and PRO at $249 plus $49 per user; at five users that is $3,048 and $5,928 a year. Corebridge prints $129, $339, $549 and $899 a month with a one-time onboarding fee. Teesom prints a per-user ladder from $77 a month for one user to $718 for thirty. InkSoft prints $314 and $419 a month. Cyrious, printIQ, Aleyant, OnPrintShop, DesignNBuy, Infigo, PageDNA and SignAgent all answered 404 at their pricing URLs, and Printavo answered 403, so a Baltimore owner cannot budget those without a sales call.
Why is a web-to-print online store priced separately from the shop system?
Because most vendors treat the storefront as a metered add-on rather than a feature. shopVOX lists its e-commerce module at $199 a month per 100 orders plus a $299 setup fee, which is a flat $1.99 an order that never falls with volume: 300 orders a month is $597 a month, or $7,164 a year. A generic order-routing tool such as Order Desk charges $125 a month plus 5 cents an order, which is $140 a month at the same volume. That is 4.26 times as much for the metered module at 300 orders a month, and 12.91 times at 1,200.
Is it worth building custom software for a print or sign shop?
It depends on how much of your stack is the storefront and the proofing layer, because those are the parts a custom build actually replaces. Two modeled Baltimore stacks at five users and 300 online orders a month come to $14,090 and $18,342 a year, of which $11,042 and $12,414 is replaceable. Against those, our $6,000 fixed-price online store pays for itself in about six months and a $12,000 build in about twelve. Our packages are published: a one-week Prototype Sprint is $3,500, a custom online store starts at $6,000, and a custom app, internal tool or operations system starts at $12,000.