It is almost always permissions that cause UPS issues.
When you start it the user profile service and the user profile sync service you must be using a farm admin account and be a local administrator.
Also check that you have configured the sync service to use the Farm account as the service account, and it is a member of the local admins group (you can remove once it's started).
Once it starts - reset IIS.
If you are running SharePoint backups - part of the process will stop the services. If you have removed the Farm account from the local admins group the service will not start correctly and stop, until you add it in there and manually restart the services.
If the above doesn't help - I recommend you go back thru step by step like you were setting up a new service and validate permissions and configuration for each account and service.