Why can't iOS apps reliably find printers on WiFi? Trying to understand if I am missing something
I'm an indie developer who built a small iOS printing app. I've been staring at my analytics and something is bugging me: a significant chunk of users who are on WiFi, grant local network permission, and select a printer brand during onboarding (HP/Canon etc) still can't get the app to find their printer.
Some of them try scanning 10+ times over multiple sessions. Nothing.
My app uses Bonjour/mDNS (same technique as AirPrint but not using AirPrint directly) to discover printers. If that finds nothing, it falls back to a TCP port scan of the local subnet. Still nothing for these users.
I'm trying to figure out if this is a fundamental limitation people run into with all third-party printer apps, or if I'm doing something wrong. A few questions for people who know printers better than me:
Do you have trouble with printer discovery in non-OEM printer apps generally?
What kills Bonjour on a home network? I know mDNS doesn't cross subnets. Are there common router brands or settings (guest networks, AP isolation, IoT VLANs) that silently break it? I'm wondering if a lot of home users are accidentally on a network segment that can't see their printer.
Or is it a more dumber explanation, people download the app without setting it up and then leave because the app doesn't auto-magically fix their printer issue?
Does the HP Smart or Epson iPrint app find printers that other apps miss? I'm curious if they're doing something different (direct cloud connection? vendor-specific discovery protocol?) that bypasses the mDNS problem entirely.
Genuinely trying to understand the failure mode here, I am honestly out of ideas at this point. Happy to share more technical detail about what I'm seeing if it's useful.