If you see IP's of individual network clients, you can map these IP's to client names using Local DNS records on the web admin GUI. These associations are stored in file /etc/pihole/custom.list. Typical entries in that file would look like this:
192.168.0.1 Router
192.168.0.100 Pi-3B
192.168.0.101 AirportExtreme
192.168.0.102 Printer
192.168.0.108 Sonos1L
192.168.0.109 Sonos1R
...
For this to work reliably, clients need to keep the same IP. This is typically done with reservations on your DHCP server.
Another option, as you noted, is to use Pi-hole as the DHCP server and then the IPs and names will be known to Pi-hole without using local hosts mapping.