I’m thinking your (dbus) environment is not initialized correctly when starting your X-session. How do you start it? Do you use some Display Manager, like xdm, gdm, etc.? How do you select to start bspwm: via a menu in your DM, after logging into your DM, from your ~/.xsession, ~/.xinitrc, etc.?
It's been a while but luckily I've kept all my config changes in a git repo! So I start bspwm by running `startx` at boot and had `exec bspwm` as the WM launch command, but had gotten it fixed by correctly starting it with `exec dbus- run-session -- bspwm`. I think the biggest issue was as someone new to trying out lauching a graphical session without a display manager, there really wasn't any indication of what exactly is needed to manually start that's taken for granted. It finally clicked when I started using other programs that require a D-Bus environment, and trying out Void Linux on some machines had me going through their docs where it's clearly stated that a session bus may be required for some software.