I know, we can associate the list/reusable workflow on lists, library and content types and trigger it based on item added/updated events.
But where to associate site workflow and on which event this workflow will be triggered?
A site workflow is associated to a site — not to a list, library, or content type
Site workflows are not connected to lists or content types and that is the reason you can run site workflows anywhere in the site.
Options to trigger Site workflow :
List workflow is to initiate workflow on any list event.
Site workflows release workflow developers from requiring a list item or document item to run workflows against .In short the site workflow is independent of all lists and libraries.
Where we use it
One use maybe like keep performance indicators, how many users, how much time was spent, those kinds of things, number of new documents.And so to have a report done on a site.Because a site workflow can actually look in every list, and count the number of items that are there, or look in libraries, and find…out how many new documents were in there.
But basically, list and library workflow can only run on a single item where site workflows are independent of a list entry.
One major difference between list (or library) and site workflows is that site workflows do not have a trigger (they can run manually or scheduled), where a list or a library workflow can be automatically started when an item is created/updated.
Site workflows are great for things that you want to happen on a schedule such as getting the workflow to run at the end of each day on a schedule, for me this would be things like: