Back to Blog

Every few months, a client asks us: “Should we build an app?” And every time, our first question back is: “What kind of app, and do you actually need one?”

The word “app” means different things to different people. For some businesses, it means a presence in the App Store. For others, it means giving customers a faster, more convenient way to interact on their phone. Those are very different goals with very different solutions and price tags. There is a lot more ground to cover here, and we walk through all of it in our complete guide to custom web applications.

Progressive Web Apps sit in the middle ground between a regular website and a native mobile app. For many local businesses, a PWA delivers 90% of what a native app would, at a fraction of the cost. But not always. Here’s how to make the right call.

What a Progressive Web App Actually Is

A PWA is a website that uses modern browser APIs to deliver app-like experiences. It’s still built with HTML, CSS, and JavaScript. It’s still accessed through a URL. But it can also:

  • Work offline or on unreliable connections
  • Be installed on a user’s home screen (no App Store required)
  • Send push notifications
  • Load instantly on repeat visits
  • Access device hardware like cameras and GPS
  • Run in full-screen mode without browser UI

The technology behind this is primarily the service worker: a JavaScript file that runs in the background, intercepts network requests, and manages a local cache of assets and data. Combined with a web app manifest (a JSON file that defines app name, icons, colors, and display mode), a regular website becomes installable and capable.

From the user’s perspective, a well-built PWA looks and feels like a native app. They tap an icon on their home screen, the app opens full-screen, and it’s fast because most assets are cached locally.

PWA Capabilities in 2026

PWA capabilities have expanded significantly. Here’s what’s available across modern browsers:

Offline Support

Service workers can cache pages, assets, and even API responses. Users can access previously loaded content without an internet connection. For a restaurant menu, a product catalog, or a service reference guide, this means the content is always available.

How it works: On first visit, the service worker caches critical assets. On subsequent visits (or when the connection drops), the service worker serves cached content instead of making network requests. You can implement strategies ranging from “cache everything” to “cache only static assets and show an offline page for dynamic content.”

Push Notifications

PWAs can send push notifications on Android, Windows, and macOS. iOS added web push notification support in 2023 with Safari 16.4, and it’s been stable and reliable since.

Use cases for local businesses:

  • Order status updates for restaurants and retail
  • Appointment reminders for service businesses
  • Flash sale alerts for e-commerce
  • Schedule changes or cancellations

Home Screen Installation

Users can add your PWA to their home screen directly from the browser. On Android, Chrome shows an install prompt automatically when PWA criteria are met. On iOS, users use the “Add to Home Screen” option in Safari’s share menu.

Once installed, the PWA appears alongside native apps with its own icon, and opens in its own window without browser chrome.

Hardware Access

PWAs can access:

  • Camera and microphone: photo uploads, video recording, barcode scanning
  • GPS and geolocation: location-based services, check-ins, directions
  • Accelerometer and gyroscope: motion-based interactions
  • Bluetooth: connecting to nearby devices (with some limitations)
  • NFC: contactless interactions (Android)
  • File system: read and write local files (with user permission)
  • Share target: your PWA can receive content shared from other apps

Background Sync

When a user submits a form or performs an action while offline, background sync queues the request and automatically sends it when the connection is restored. This is critical for field service applications where workers may be in areas with poor connectivity.

Periodic Background Sync

On supported platforms, PWAs can periodically wake up and fetch fresh data in the background, keeping content up to date even when the app hasn’t been opened recently. Support is currently limited to Chromium-based browsers, but it’s valuable for data-heavy applications.

Custom software is built around your workflow, not the other way around.
Custom software is built around your workflow, not the other way around.

PWA Limitations: Where They Fall Short

PWAs are not a universal replacement for native apps. Here are the real limitations:

No App Store Distribution (Mostly)

PWAs aren’t listed in the Apple App Store or Google Play Store by default. While tools like PWABuilder and Bubblewrap can package PWAs for the Play Store, and Microsoft Store accepts PWAs, Apple’s App Store remains effectively closed to pure PWAs.

Why this matters: Some businesses need App Store presence for discovery, credibility, or because their customers expect to search the App Store for them. If “find us in the App Store” is a core requirement, a PWA alone won’t satisfy it.

The workaround: You can wrap a PWA in a native shell (using Capacitor or a similar tool) and submit it to app stores. This gives you a single codebase with store distribution. The tradeoff is that you’re subject to app store review processes and policies.

iOS Limitations

Apple has historically been slower to support PWA features than Google. While the gap has narrowed considerably, some differences remain:

  • Push notifications work on iOS but require the PWA to be installed to the home screen first
  • No background sync on iOS Safari
  • Storage limits are more restrictive (typically 50MB for cached data vs. effectively unlimited on Android)
  • No Bluetooth or NFC access via Safari
  • Badge API (showing notification counts on the app icon) has limited iOS support

For businesses where iOS users are a significant audience (and they usually are), test your PWA thoroughly on iPhones. Most core functionality works great, but edge cases exist.

Limited Hardware Access

Native apps can access:

  • Advanced Bluetooth Low Energy features
  • HealthKit / Google Fit integration
  • Apple Pay / Google Pay in-app (though web payment APIs cover basic payment flows)
  • Background location tracking (PWAs can only access location while active)
  • Siri / Google Assistant deep integration
  • Widgets on the home screen

If your app concept requires deep hardware integration, native is likely the better path.

Performance Ceiling

For graphics-intensive applications (games, AR experiences, complex animations), native apps have a performance advantage because they can leverage platform-specific rendering engines and GPU access directly. PWAs are limited to what the browser’s rendering engine can deliver.

For business applications, this limitation is rarely relevant. A form, a dashboard, or a booking interface runs perfectly well as a PWA.

Cost Comparison

This is where PWAs become compelling for most businesses.

PWA Development

  • Single codebase that works on all platforms (iOS, Android, desktop)
  • Built with standard web technologies (your web developer can build it)
  • No app store fees ($99/year for Apple, $25 one-time for Google)
  • Updates deploy instantly, no waiting for app store review
  • Typical cost for a local business PWA: $5,000-$20,000 depending on complexity
  • Ongoing maintenance: Standard web hosting costs plus development time for updates

Native App Development

  • Two separate codebases: one for iOS (Swift) and one for Android (Kotlin)
  • Requires specialized mobile developers (different skill set than web)
  • App store fees and review processes
  • Updates require new builds, store submissions, and user adoption
  • Typical cost for a local business native app: $25,000-$80,000+ for both platforms
  • Ongoing maintenance: $5,000-$15,000/year for updates, OS compatibility, and store compliance

Hybrid App Development (React Native, Flutter)

  • Single codebase that compiles to native
  • Access to most native APIs
  • Specialized developers needed (React Native or Flutter expertise)
  • Still requires app store submissions and fees
  • Typical cost: $15,000-$50,000
  • Ongoing maintenance: $3,000-$10,000/year

For most local businesses, the PWA option costs 60-80% less than native development and delivers a comparable user experience for standard business applications.

Real Use Cases for Local Businesses

Here’s where we’ve seen PWAs deliver genuine value for local and regional businesses.

Restaurant Ordering

A local restaurant group wanted customers to order online without downloading an app. We built a PWA with:

  • Full menu browsing that works offline (useful in basements and areas with poor cell coverage)
  • Add-to-home-screen for repeat customers
  • Push notifications for order status updates
  • Cart persistence across sessions via local storage
  • Location-based store selection

The result: mobile ordering increased 40% compared to the previous website-based flow, and they avoided the ongoing costs and complexity of maintaining native apps.

Field Service Management

A regional HVAC and plumbing company needed their technicians to access work orders, capture photos, and log time in the field, where internet connectivity is unreliable at best.

PWA features used:

  • Offline work order access with background sync when connectivity returns
  • Camera integration for photo documentation
  • GPS for automated mileage tracking
  • Push notifications for new job assignments

The PWA replaced a paper-based system and a clunky native app that technicians hated. Because it’s a web app, deploying updates to 50+ technicians happens instantly without requiring them to update from an app store.

Inventory and Stock Checking

A building materials supplier built a PWA for their sales team and counter staff:

  • Barcode scanning via camera to look up products
  • Real-time inventory levels with offline fallback showing last-synced data
  • Quick quote generation
  • Customer account lookup

This would have been a classic native app use case five years ago. The PWA handles it at a fraction of the cost.

Event and Booking

A local entertainment venue uses a PWA for:

  • Event calendar browsing
  • Seat selection and booking
  • Digital ticket display (works offline, critical for entry)
  • Push notifications for upcoming shows and last-minute deals

Customers install it to their home screen before their first visit and use it as their go-to for checking schedules and buying tickets.

When Native Is Worth the Investment

Despite our enthusiasm for PWAs, there are clear situations where native development is the right call:

  • App Store presence is a business requirement: Your competitors are in the App Store and customers search there first
  • Deep hardware integration: You need Bluetooth LE, HealthKit, ARKit, or other platform-specific APIs
  • Performance-critical applications: Gaming, complex real-time graphics, or AR/VR experiences
  • Platform-specific features: Widgets, Siri shortcuts, Apple Watch companion app, Android Auto integration
  • Enterprise with existing native team: If you already have iOS and Android developers on staff, the cost equation changes
  • Regulated industries: Some industries require app store distribution for compliance reasons

Our Decision Framework

When a client asks us whether they need a PWA or a native app, we work through these questions:

1. What problem are you solving for your users? If it’s faster access, repeat engagement, and convenience: a PWA likely covers it. If it’s deep device integration, lean native.

2. Who are your users and how will they find the app? If users will reach you through search or your website, a PWA is natural. If they’ll search the App Store, native has an advantage.

3. What’s your budget, both upfront and ongoing? If you’re under $20,000 total budget, a PWA gives you far more capability per dollar.

4. What does your app need to do offline? If it’s viewing cached content and queuing actions, PWA handles it well. If it’s complex offline-first data synchronization with conflict resolution, native might handle it more robustly.

5. How frequently will you update the app? If you need to push updates weekly, PWAs win: instant deployment with no store review. Native apps have a friction-filled update cycle.

6. What’s your timeline? PWAs can often launch in 4-8 weeks. Native apps for both platforms typically take 12-20 weeks. If speed to market matters, PWA gets you there faster.

The Honest Recommendation

For 80% of local businesses considering an app, a PWA is the right choice. It costs less, ships faster, works across all platforms, and handles the use cases that actually matter: fast repeat access, offline capability, push notifications, and an app-like experience.

For the other 20% (businesses with genuine native-only requirements), we’ll tell you that directly and either build native or connect you with a native development partner.

The worst outcome is spending $50,000 on native apps that don’t solve a problem a $10,000 PWA could have handled.

Keep Reading

Whatever form the app takes, it has to earn its keep. Our Air Cortez case study shows how we rebuilt a Houston HVAC company’s site into a lead-generating machine.

About the Author

Brian Hunter is the founder of Hunter Creative Media & Design, an Aurora, IL studio building hand-coded websites and custom web applications for small businesses across Chicago’s western suburbs. He writes about web performance, local SEO, and the software that runs small businesses. Get in touch.