Do it on a backup database at regular maintenance schedule (once per week). If backup show no orphans, your primary should be good too. Frequency depends on many factors, mostly on how often orphans are found (an that depends on connections reliability and if database was much in use during backup). Do never perform it on live database!
Is it because running the scan on a live database slows down performance during the day? Can I simply run it after work hours without issue?
DB w/ ~24,000 objects, I run it once/month or so, after business hours. (I don't have a maintenance window defined"). If you can stop the database service while you do it, it's faster/cleaner.
According to the Orphan Report (which runs once/week), I have 2 orphans right now.
It for sure would be best to run group scans with the services down so nothing is locked or trying to do work while you are scanning. That being said, not everyone can shut their services down for something like this. I have ran group scan on live DBs many many times. Never had an issue with it but Peter is right... should be done during down times or maint windows for safer results.