Network Type Indicator lets you put an icon in the status bar that will display the type of cellular connection your phone has at any given time, and whether mobile data is connected or not.

This app is most useful for devices that don't include this information in the status bar, or that hide it when roaming.

Notes:
- Due to the way Android works, a non-removable notification must be present along the status bar icon.
- Likewise the icon can not be placed in the right hand side of the status bar.
- In Lollipop and up, the notification will show in the lockscreen. I'm not aware of any way to avoid that.
- This app is expected to work in multi-SIM devices, but (for the time being) only for the primary card.
- Some devices (e.g. Xiaomi/MIUI devices) will display the app's icon instead of the connection type in the status bar. In those devices you'll only be able to see the network type information in the app's notification.

Permissions explained:
- (Lollipop and lower only) Phone / Device ID & call information: read phone status and identity - This is required to read the network type. This app doesn't use a phone's "identity" for any purpose, but these permissions always go together.
- Other: run at startup - This is required for the notification to load at boot (if you so choose)

You can read the FAQ for further details on features often requested.
From version Network Type Indicator 1.5.2:
2017-08-26:
Fixes for "Load on boot" feature on some devices.

2017-08-15:
First update in almost two years! A lot of changes under the hood, plus a few more obvious ones:
The icons now reflect data connection state, and are a bit bigger, plus hopefully sharper. The default app theme is now light.
Notification priority is configurable.
For those of you who'd like to donate, there's a menu entry linking to information on the subject.
Plus a bunch of bugfixes and likely a bunch of new bugs.
Variant
Arch
Version
DPI
(Android 4.0+)
Latest: 1.5.2 on August 21, 2017
(Android 7.0+)
Latest: 1.5.2 on August 21, 2017
All versions