I have also setup conditional forwarding as recommended, but still no hostnames were shown.
Then I noticed my modem showing up in the dashboard of pihole as upstream server, it seemed pihole did forward some requests. So I have checked the log of queries sent to my modem (just clicking on the name/ip):
Type Domain Client Status Reply
PTR 1.0.168.192.in-addr.arpa 192.168.0.120 OK (answered by getmodem.home#53) DOMAIN (3.0ms)
PTR 136.0.168.192.in-addr.arpa 192.168.0.108 OK (answered by getmodem.home#53) NXDOMAIN (16.3ms)
PTR 132.0.168.192.in-addr.arpa 192.168.0.108 OK (answered by getmodem.home#53) NXDOMAIN (17.2ms)
PTR 131.0.168.192.in-addr.arpa 192.168.0.108 OK (answered by getmodem.home#53) NXDOMAIN (18.8ms)
PTR 128.0.168.192.in-addr.arpa 192.168.0.108 OK (answered by getmodem.home#53) NXDOMAIN (19.7ms)
PTR 121.0.168.192.in-addr.arpa 192.168.0.108 OK (answered by getmodem.home#53) NXDOMAIN (20.4ms)
PTR 115.0.168.192.in-addr.arpa 192.168.0.108 OK (answered by getmodem.home#53) NXDOMAIN (21.9ms)
As you can see from the log the modem only resolves it's own IP with reverse look-up, but not the other hosts. The same can be verified using dig e.g.:
dig -x 192.168.0.121 @192.168.0.1
So also check reverse look-ups with your modems/DHCP servers before blaming only pihole..