The way amountd is started is not that obvious. gdm invokes /usr/local/etc/gdm/Xsession which invokes ~/.xprofile which invokes scripts in /usr/local/share/pcbsd/xstartup.
To fix the issue for me I changed /usr/local/share/pcbsd/xstartup/amountd.sh to
ps -x | grep -v grep | grep /usr/local/etc/amount/amountd >/dev/null
# if not found - equals to 1, start it
if [ $? -eq 1 ]