A Self-Hosted Multi-Tenant Digital Signage Platform Replacing OptiSigns
VistaCMS is a self-hosted, multi-tenant digital signage platform built to replace OptiSigns for IT Pro Partner MSP customers. Instead of paying a third-party SaaS vendor $10 to $45 per screen per month, customers pay $39 per screen per month on a graduated schedule that falls to $25 per screen at 50 and above. Every screen carries every feature: no feature gating, no screen limits, no third-party dependency.
The platform is built on FastAPI + SQLite, hosted on existing netcup infrastructure, and played back on Raspberry Pi 4 or Raspberry Pi 5 players running Chromium kiosk mode, and on screens the customer already owns, such as a Fire TV stick, a smart TV browser or a tablet. IT Pro Partner controls the entire stack: content storage, playlist delivery, device registration, and customer management. Optional custom HTML menu board design ($299 one-time) is a service differentiator that OptiSigns cannot match.
Target: Migrate existing OptiSigns customers first (2-3 screens each), then expand to restaurants, gyms, medical offices, and retail businesses.
Break-even: Break-even: 5 customers / 12 screens at $436/month on the graduated schedule. Gross margin exceeds 95% at steady state.
Every MSP customer paying OptiSigns directly is monthly recurring revenue the MSP does not capture. At scale (20+ screens), that is $200-600/month leaving the business every month - for a service the MSP could deliver on its own infrastructure at near-zero incremental cost.
When OptiSigns changes pricing, deprecates features, or alters plan tiers, the MSP's customers are affected and the MSP has no recourse. You are a reseller, not an owner. Your value to the customer is limited to being a middleman for someone else's platform.
Most small business signage needs are straightforward: show images and short videos on a TV, change content from a browser, have it "just work," and pay a fair price. They do not need Power BI dashboards, Salesforce integrations, or video walls. They need a reliable screen and someone who handles the setup.
VistaCMS replaces OptiSigns with a platform IT Pro Partner owns end-to-end. The customer experience is simple: log into a web portal, upload content, build playlists, and plug in a pre-configured Raspberry Pi. The MSP handles everything else.
| MVP Feature | Description |
|---|---|
| Content Upload | Images (JPG, PNG, WebP) and video (MP4, MOV, WebM) |
| Playlist Builder | Ordered sequences, shuffle mode, per-device assignment |
| Multi-Tenant Isolation | Each customer sees only their own content and devices |
| Pi Auto-Registration | Device registers via unique code - plug in and it works |
| Custom HTML Design | ITPP builds custom menu boards as HTML ($299 one-time upsell) |
| Device Monitoring | Online/offline status, last seen, screen resolution |
| Admin Portal | ITPP manages all tenants from a single dashboard |
The global digital signage market is projected to reach $45 billion by 2030, growing at roughly 8% CAGR. The SMB segment (restaurants, retail, gyms, medical offices) represents the largest installed base by unit count but is underserved by enterprise-focused platforms that are overpriced, overcomplicated, and self-serve.
| Segment | Use Case | Typical Screens | Decision Maker |
|---|---|---|---|
| Restaurants | Menu boards, daily specials, promotions | 1-4 | Owner/Manager |
| Gyms | Class schedules, promotions, announcements | 1-3 | Owner |
| Medical Offices | Waiting room content, service menus, health tips | 1-3 | Office Manager |
| Retail | Promotional displays, product showcases | 1-5 | Owner/Manager |
| Platform | Pricing | Screens | Key Limitation |
|---|---|---|---|
| OptiSigns | $10 to $45/screen/mo | Per screen | Feature-gated tiers, third-party dependency, no hardware ownership path |
| ScreenCloud | $20/mo per screen | Per screen | Expensive at scale, no custom HTML |
| Yodeck | Free (1), $8+/screen | Per screen | Free tier limited, Raspberry Pi only |
| Raydiant | $50+/screen | Per screen | Enterprise pricing, SMB overkill |
| VistaCMS | From $39/mo per screen | Unlimited | New entrant, smaller feature set |
VistaCMS competes on per-screen pricing that scales with the customer, MSP white-glove service and custom HTML design capability. For a restaurant with 3 screens OptiSigns bills per screen at their published list, so $30 to $135 per month depending on the tier; VistaCMS costs $117/month on the graduated schedule, in exchange for white-glove setup, ongoing MSP support and professionally designed menu boards that no competitor can match. That is a deliberate trade: we are not the cheapest option for a single screen, and we do not sell on price alone.
| Screens on the account | Price per screen / month | Billed |
|---|---|---|
| 1 to 4 screens | $39 | Monthly |
| 5 to 19 screens | $35 | Monthly |
| 20 to 49 screens | $29 | Monthly |
| 50 or more screens | $25 | Monthly |
These are the volume tiers published on vistacms.com. The rate is applied automatically on active screens per account and falls as the account grows, so a customer on 12 screens pays $39 for the first 4 and $35 for the remaining 8. There is no separate platform fee, no per-user charge and no feature gating between tiers.
Per-screen pricing aligns our revenue with the customer's growth. One screen is $39/month. Five screens are $191/month. Ten screens are $366/month (4 at $39 plus 6 at $35). Twenty screens are $710/month. Fifty-five screens are $1,701/month. Because the schedule is graduated rather than retroactive, adding a screen never raises the rate on the screens already in place, and the customer can always predict the next screen.
The same rate applies whatever the screen is plugged into. A screen on one of our players, on a Fire TV stick, on a smart TV browser or on a tablet is billed identically, and it is billed per screen regardless of how many screens one player drives.
Per screen per month, against the published competitor list:
| Screens | OptiSigns, monthly | OptiSigns, annual billing | VistaCMS |
|---|---|---|---|
| 1 | $10 to $45 | $9 to $40.50 | $39 |
| 5 | $50 to $225 | $45 to $202.50 | $191 |
| 10 | $100 to $450 | $90 to $405 | $366 |
| 20 | $200 to $900 | $180 to $810 | $710 |
| 55 | $550 to $2,475 | $495 to $2,227.50 | $1,701 |
The competitor columns are their published list across four tiers: $10 (Standard), $15 (Pro-Plus), $30 (Engage) and $45 (Enterprise) per screen per month, or $9, $13.50, $27 and $40.50 on annual billing. VistaCMS competes on per-screen pricing that scales with the customer, MSP white-glove service and custom HTML design capability. We are deliberately not the cheapest option, and we do not sell on price alone: the buyer who chooses on price alone is not the account we are built for. What a customer buys is a platform their MSP owns end to end, with every feature on every screen, no plan tier that can be withdrawn, and now a choice of player hardware that no SaaS vendor offers.
Every screen needs something to play the content. A screen can run on a player we supply, on hardware the customer already owns, or on a mix of both. When we supply the player, the customer chooses at order time between buying it outright and leasing it from ITPP. The per-screen software rate is identical either way, and screens are billed per screen regardless of how many screens one player drives.
Our benchmark player is a Raspberry Pi 4 running Chromium kiosk mode, in a silent aluminium case that doubles as the heatsink, with a spare imaged card in the box. A Raspberry Pi 5 build is available as an upgrade. Both drive a 4K display.
$399 per player, one time for the Raspberry Pi 4 build, or $439 for the Raspberry Pi 5 build.
| Included in the price | Detail |
|---|---|
| Hardware | Raspberry Pi board, aluminium case that acts as the heatsink, power supply, micro HDMI cable, 32GB card |
| Provisioning | Imaged, configured, tested, labelled and registered to the customer account before it ships |
| Spare card | A second imaged card in the box. If a card wears out, the customer swaps it and the screen is back within minutes |
| Shipping | Ground shipping within the continental United States |
| Warranty | 12 months, advance replacement. We ship a working unit and the customer returns the failed one with the prepaid label |
| Ownership | The customer owns the player from delivery. Nothing further is owed on the hardware |
After the warranty year, a replacement player is $249, covering the hardware, the imaging and the outbound shipping, with the failed unit returned using a prepaid label. An on-site technician visit is quoted per site.
$16 per player per month on a 36 month term, or $18 for the Raspberry Pi 5 build. Nothing up front, no hardware on the customer's balance sheet, and one invoice carrying both the software and the hardware.
| Included in the lease | Detail |
|---|---|
| Hardware and provisioning | The same build as the purchase option, imaged and registered to the customer account |
| Shipping | Both directions, at the start of the term and at the end if the units are returned |
| Warranty | The whole 36 month term, not just the first year |
| Failed units | Unlimited advance replacement at no charge for the whole term |
| Ownership | ITPP owns the hardware during the term and afterwards, unless the customer buys it out |
| End of term | Renew month to month at $12 per player, refresh to new hardware on a new term, return the units at our cost, or buy out at $99 per player |
| The lease, in numbers | Per player |
|---|---|
| Monthly payment | $16 |
| Total across the 36 month term | $576 |
| Compared with buying at $399 | 1.44 times, with nothing paid up front |
| Month at which the lease has cost more than buying | Month 25 |
| End of term renewal | $12 per player per month |
| End of term buy out | $99 per player |
| Early termination | Remaining payments discounted at 10 percent per year, capped at half the remaining payments |
A failed player is replaced at no charge for the full term, which is the part customers value most: nobody has to find a spare unit, and nobody re-images anything. The lease rate does not graduate with volume, because the hardware cost does not either.
| Buy | Lease | |
|---|---|---|
| Hardware cost per player | $399 once | $16 per month, $576 over 36 months |
| Cash needed up front | $399 per player | None |
| Who owns the player | The customer | ITPP |
| Warranty | 12 months | The whole term |
| A failed player | Free in year one, $249 afterwards | Free, always |
| At the end of the term | The customer keeps it | Renew, refresh, return or buy out |
| Best fit | 1 to 5 screens, capital budget, customers who want to own the units | 10 screens and above, operating budget, customers who want hardware to be a line item rather than a purchase order |
Bringing your own player is always an option. If the hardware is already the customer's, or if the screen is a Fire TV stick, a smart TV browser or a tablet, we configure the screen once for a $49 one-time provisioning fee and then it is billed at the ordinary per-screen rate. No hardware cost, no lease, same software, same support.
| Screens | Software per month | Buy all, one time | Lease all, per month | Lease, software plus hardware | Three years, buy | Three years, lease |
|---|---|---|---|---|---|---|
| 1 | $39 | $399 | $16 | $55 | $1,803 | $1,980 |
| 5 | $191 | $1,995 | $80 | $271 | $8,871 | $9,756 |
| 10 | $366 | $3,990 | $160 | $526 | $17,166 | $18,936 |
| 20 | $710 | $7,980 | $320 | $1,030 | $33,540 | $37,080 |
| 55 | $1,701 | $21,945 | $880 | $2,581 | $83,181 | $92,916 |
Figures exclude the one-time design service and assume every screen runs on a Raspberry Pi 4 player on the same path. Three year totals are software plus hardware across 36 months.
A mixed account: 12 screens across 3 locations. Nine screens run on leased players, two on players the customer bought, and one on the customer's own Fire TV stick that we configure once. Month one is $1,427. Months two to twelve are $580 per month. Three years, including the two purchased players and the one-time provisioning, comes to $21,727. The customer gets twelve screens live without buying a single player, and there is no hardware capital request to approve.
Where we offer private network access for fleet management, it is passed through at our cost: one dollar per tagged device per month beyond the first fifty tagged devices. It is not a margin line, and it is not required for the platform to work.
Screens, players and the platform all live on infrastructure IT Pro Partner owns. There is no third-party signage vendor in the path, and no per-account plan that can be repriced or withdrawn.
The hardware figures in this section come from United States retail parts pricing read on 26 September 2026, and from a stated cost of capital assumption of 10 percent per year. The full cost basis, the assumptions and the sources are held in the canonical price book at vistacms/docs/price-book.md.
| Component | Technology | Notes |
|---|---|---|
| Backend API | FastAPI (Python) | RESTful, JWT auth, per-tenant scoping |
| Database | SQLite | Single-file, zero-config, sufficient for SMB scale |
| Reverse Proxy | Caddy | Auto-TLS, static file serving for content |
| Player Hardware | Raspberry Pi 4 or Raspberry Pi 5 | 4K output. The customer buys the player for $399, leases it for $16 per player per month, or supplies their own device. Billed per screen regardless of how many screens one player drives |
| Player Software | Chromium kiosk | Fullscreen, auto-start, polls API for playlist |
| Hosting | netcup VPS | Existing ITPP infrastructure |
One customer = one tenant = unlimited devices. Content libraries are per-tenant. Playlists can be assigned to one or multiple devices. A device plays exactly one playlist at a time.
| Tenant | Users | Devices | Content |
|---|---|---|---|
| Joe's Diner | admin, staff | Lobby Pi, Menu Pi | 8 items, 2 playlists |
| Main Street Gym | owner | Front Desk Pi | 5 items, 1 playlist |
| Third Coast Dental | frontdesk | Waiting Pi, Exam Pi, Hallway Pi | 12 items, 3 playlists |
VistaCMS is delivered in two deployment shapes. The application, portal and per-screen licensing are identical in both; what changes is where the platform runs and how isolated it is. The tier pricing in the table above applies either way.
VistaCMS runs on the infrastructure that already powers IT Pro Partner day to day: the existing netcup RS 4000 and RS 2000 estate, fronted by nginx, with media and database dumps protected by the Wasabi S3 backup pipeline already in place. Nothing new has to be bought, racked or learned.
For customers who need their own footprint, VistaCMS is deployed on dedicated netcup or Hetzner instances, with a dedicated S3 bucket holding that deployment's content and backups. Managed by IT Pro Partner from provisioning through patching, monitoring and restore testing.
IT Pro Partner manages everything below the application layer. That covers the operating system, web and API runtime, database, network, TLS certificates, monitoring and alerting, patching, and backups with tested restores. The customer manages what only the customer should manage: their users, their content, their playlists and the layout choices on their own screens. ITPP also manages the players themselves, including provisioning, registration and replacement, so a failed screen is a service call to us rather than a project for the customer.
Both options include the same portal, the same per-screen licensing and the same escalation path into IT Pro Partner support.
Every customer signs in at my.vistacms.com. It is a live production service, not a prototype, and it is where the day to day work of running signage happens: uploading content, building playlists, assigning them to screens, and seeing device health at a glance.
| Role | What they see | What they can do |
|---|---|---|
| Customer user | Only their own organisation: their devices, their content library, their playlists | Upload and organise content, build and edit playlists, manage their own profile, change package, and add screens |
| IT Pro Partner administrator | Every organisation and every device on the platform, in one view | Onboard customers, provision and register players, monitor all screens, and act on alerts before a customer notices |
Isolation is enforced at the API layer: a customer session is scoped to its own tenant, so the content, devices and playlists of one organisation are never visible to another. The administrator view is the only place the whole estate is visible, and it is the same dashboard ITPP uses to run the rest of its managed services.
IT Pro Partner's existing MSP customers who currently use OptiSigns are the first targets. Offer free migration: ITPP handles content transfer, provisions Pis, and cancels their OptiSigns subscription. Position as "same service, lower cost, direct support from us."
Target: 3-5 customers, 6-15 screens.
Once the platform is proven with existing customers, bundle signage as an add-on service for all MSP clients. Offer "first screen free for 30 days" to current MSP customers. Target restaurants, gyms, and medical offices in the service area. Leverage existing MSP relationships.
With a stable platform and reference customers, expand through outbound sales, POS vendor partnerships, and content marketing. Target restaurant chains, gym franchises, and medical/dental practices. Produce case studies, ROI calculators, and demo videos.
| Channel | Est. CAC | Notes |
|---|---|---|
| Existing MSP migration | $0 | Already a customer, no acquisition cost |
| MSP cross-sell | $50 | Email campaign + phone call |
| Direct outbound | $200 | Time + materials for demos |
| Referral / Word of mouth | $0 | Organic from existing customers |
| Capability | OptiSigns | VistaCMS |
|---|---|---|
| Per-screen pricing | No (per-account) | Yes |
| Feature gating by tier | Yes (3 tiers) | No (all features included) |
| Custom HTML menu boards | No | Yes ($299 one-time) |
| MSP white-glove service | No | Yes |
| Platform ownership | Third-party | Self-hosted |
| No vendor lock-in | No | Yes (open platform) |
| Direct support contact | Ticket-based | Phone/email to ITPP |
| Feature | OptiSigns | ScreenCloud | Yodeck | VistaCMS |
|---|---|---|---|---|
| Content upload (images + video) | Yes | Yes | Yes | Yes |
| Playlist builder | Yes | Yes | Yes | Yes |
| Multi-tenant isolation | No | No | No | Yes |
| Raspberry Pi support | Limited | Yes | Yes | Yes (native) |
| Custom HTML design service | No | No | No | Yes |
| Device monitoring dashboard | Yes | Yes | Yes | Yes |
| MSP white-glove service | No | No | No | Yes |
| Price per screen/month | $10-30/account | $20 | $8+ | From $39 |
| Self-hosted option | No | No | No | Yes |
VistaCMS does not compete on being the cheapest option for a single screen. It competes on being the best option for businesses that want someone else to handle everything - from setup to ongoing management to custom menu board design.
| Risk | Likelihood | Impact | Mitigation |
|---|---|---|---|
| Customer stays with OptiSigns | Medium | High | Free migration, lower pricing at scale, highlight MSP relationship |
| Pi hardware failure | Medium | Medium | Pre-flashed recovery SD cards, remote monitoring alerts |
| Content piracy concerns | Low | High | Tenant isolation, content watermarking, terms of service |
| Network downtime at customer site | Medium | Low | Player caches current playlist locally, resumes on reconnect |
| Competitor price drop | Low | Medium | Compete on service, not price. Custom HTML design is undefendable by template-based competitors |
| Scaling database (SQLite limits) | Low | Medium | Migrate to PostgreSQL if tenant count exceeds 100 |
| Customer churn | Medium | Medium | Annual contracts, sticky custom designs, bundled MSP services |
The biggest risk is customer inertia. Businesses that already have OptiSigns working may not see a reason to switch. Mitigation: target pain points (cost at scale, support quality, desire for custom designs) and make migration zero-effort for the customer. ITPP handles everything.
| Item | Cost | Notes |
|---|---|---|
| Development (MVP) | $0 | Built by ITPP in-house |
| netcup VPS (existing) | $0 | Runs on current infrastructure |
| Domain + SSL | $10.46/yr | vistacms.com registration, SSL via Let's Encrypt |
| Test Pi 4 hardware | $0 | Existing Apex-day unit, used as the first test device |
| Total Startup | $10.46 |
Assumptions: Start with 2 migrated OptiSigns customers (5 screens total). Add 1-2 customers per month. Average 2.5 screens per customer. One design service sale every other month. Graduated per-screen pricing: $39 for the first 4 screens, $35 for the next 15, $29 for the next 30, $25 beyond 50. Player provisioning at $49/screen for new customers.
| Month | Customers | Screens | MRR | Design Fees | Provisioning | Total Revenue | Cumulative |
|---|---|---|---|---|---|---|---|
| 1 | 2 | 5 | $191 | $0 | $0 | $191 | $191 |
| 2 | 3 | 10 | $366 | $299 | $245 | $910 | $1,101 |
| 3 | 5 | 12 | $436 | $0 | $98 | $534 | $1,635 |
| 4 | 6 | 17 | $611 | $299 | $245 | $1,155 | $2,790 |
| 5 | 8 | 20 | $710 | $0 | $147 | $857 | $3,647 |
| 6 | 10 | 25 | $855 | $299 | $245 | $1,399 | $5,046 |
| 7 | 12 | 30 | $1,000 | $0 | $245 | $1,245 | $6,291 |
| 8 | 14 | 35 | $1,145 | $299 | $245 | $1,689 | $7,980 |
| 9 | 16 | 40 | $1,290 | $0 | $245 | $1,535 | $9,515 |
| 10 | 18 | 45 | $1,435 | $299 | $245 | $1,979 | $11,494 |
| 11 | 20 | 50 | $1,576 | $0 | $245 | $1,821 | $13,315 |
| 12 | 22 | 55 | $1,701 | $299 | $245 | $2,245 | $15,560 |
| Metric | Value |
|---|---|
| Monthly Recurring Revenue (MRR) | $1,701 |
| Annual Recurring Revenue (ARR) | $20,412 |
| Total Year 1 Revenue | $15,560 |
| Total Customers | 22 |
| Total Screens Deployed | 55 |
| Avg Revenue Per Screen/Month | $30.93 |
| Avg Design Fees/Month | $149.50 |
| Gross Margin (steady state) | >95% |
| Target | Metric |
|---|---|
| Customers | 20+ |
| Screens deployed | 50+ |
| Monthly recurring revenue | $1,700+ |
| Gross margin | >95% |
| OptiSigns migrations | All former customers migrated |
| Design service revenue | $150+/month in one-time fees |
Cancel OptiSigns as soon as Phase 1 is live. The only value they add is the player app and the CMS UI - both of which we build once and own forever.
- IT Pro Partner Product Division