Cost driver

A cost driver is the unit of an activity that causes the change in activity's cost.
"Cost drivers are the structural determinants of the cost of an activity, reflecting any linkages or interrelationships that affect it". Therefore we could assume that the cost drivers determine the cost behavior within the activities, reflecting the links that these have with other activities and relationships that affect them.
The Activity Based Costing (ABC) approach relates indirect cost to the activities that drive them to be incurred. 
Activity Based Costing is based on the belief that activities cause costs and therefore a link should be established between activities and product. The cost drivers thus are the link between the activities and the cost of the product.
Generally, the cost driver for short term indirect variable costs may be the volume of output/activity; but for long term indirect variable costs, the cost drivers will not be related to volume of output/activity.
In traditional costing the cost driver to allocate indirect cost to cost objects was volume of output. With the change in business structures, technology and thereby cost structures it was found that the volume of output was not the only cost driver. 
John Shank and Vijay Govindarajan list cost drivers into two categories:
Structural cost drivers that are derived from the business strategic choices about its underlying economic structure such as scale and scope of operations, complexity of products, use of technology, etc., and
Executional cost drivers that are derived from the execution of the business activities such as capacity utilization, plant layout, work-force involvement, etc.
Resource cost Driver is measure of quantity of resources consumed by an activity. It is used to assign cost of a resource to activity or cost pool.
Activity Cost Driver is measure of frequency and intensity of demand placed on activities by cost object. It is used to assign activity costs to cost objects.
To carry out a value chain analysis, ABC is a necessary tool. To carry out ABC, it is necessary that cost drivers are established for different cost pools.
Examples.
Some examples of indirect costs and their drivers are: indirect costs for maintenance, with the possible driver of this cost being the number of machine hours; or, the indirect cost of handling raw-material cost, which may be driven by the number of orders received; or, inspection costs that are driven by the number of inspections or the hours of inspection or production runs. In marketing, cost drivers are Number of advertisements, Number of sales personnel etc. In Customer service, cost drivers are Number of service calls attended, number of staff in service department, number of warranties handled, Hours spent on servicing etc..