From the Django Docs:
Deployment django.contrib.staticfiles provides a convenience management command for gathering static files in a single directory s
The STATIC_ROOT can be on a different machine than the application, so copying your static files to the static root means that you can serve your static files from a different server (CDN FTW!) which you wouldn't be able to do if those files where only located within their respective app directories.