Compare/sync your /etc/master.passwd and /etc/group file to have all accounts on the new machine before you use rsync for other data, then rebuild the passwd.db (by executing vipw save and quit).
Figure out all the packages on the old machine (how they are configured/build) and what changed if something is outdated.
For self build packages you can get a good overview with the options file in /var/db/ports.
Example postfix, is it a stock postfix (default options or customized postges/mysql, vda ...) same for all the other packages.
Transfer /var/db/ports directory and the /usr/local/etc folder for example via rsync to the new machine, then install/build all packages on the new machine (start with major ports for example postfix, dovecot, apache).
Datebases => dump => restore on the new machine => test with sql command interface.
Data (/var/mail, /usr/home and other data directories can be transferd with rsync)
Test all applications on the new machine if anything is OK you can swap the IP from both machines and test again.
To get a quick overview if a important package is missing
# pkg_info -qoa | sort > packages_6
# pkg_info -qoa | sort > packages_8
transfer packages_6 to the 8 host and
# diff -u packages_6 packages_8| more
Make sure you have all the time access to both machines to fix or swap back.
It is nearly impossible to write a full howto and what to transfer, you have to know this for your machine.