Bars really don’t matter. You can have full bars and slow to no internet. You can have one bar but relatively decent internet. Honestly kind of wish the signal display would go away and instead show me when I lose internet.
When you lose internet, you get a ! next to the bars (at least I have on my last few androids). Usually I also have no bars when I lose internet, but sometimes I've got coverage without data flow.
And while we're at it: Just surface the fact that connectivity sucks to applications (maybe even at the socket layer, by just closing them if there's not been any forward progress for a certain time), rather than showing me loading screens that'll never go anywhere for minutes.
This would give apps that do have some offline caching the chance of falling back to that (looking at a certain green music streaming service here).
It is surfaced to apps, but the "just detecting that connectivity sucks" heuristic turns out to be not all that easy to implement. There doesn't seem to be a better heuristic than "try and let the app decide if waited too long".