Q:

Does velocity or acceleration cause time dilation?

What causes time dilation?  Acceleration or velocity?
I've seen multiple comments on this forum that assert velocity is the cause, but that doesn't seem right to me.  You can't have velocity without acceleration.  It's the inertial force with acceleration that breaks the symmetry.  My understanding is that the asymmetry is where the inertial frame changes.  Measuring time between two objects with different inertial frames is where you have time dilation.  When the acceleration ends, the object is effectively at rest in a new inertial frame and has velocity relative to another object in the original inertial frame.
In other words, acceleration (changing reference frames) is the cause...velocity and time dilation is the effect.
Am I right about this?  If there are flaws in my logic I'd like to find and correct them.

A:

We need to untangle this a bit but first:  the cause of time dilation is the geometry of spacetime which is such that there is an invariant speed c.
Now, remember that velocity or speed is not a property of an object; there is no absolute rest.
Further, consider the case of three objects in uniform relative motion with respect to each other.
If I choose one of those objects and then ask you "what is the relative velocity of this object?", the only proper response you could give is "velocity relative to which of the other objects?"
So, we can't speak of the relative motion of an object but rather the relative motion of a pair of objects.
What we can say is that, for two objects in relative uniform motion with respect to each other, the other object's clock runs slow according to each object's own clock.  This is called relative velocity time dilation.
It is important to realize that in the case of relative time dilation, the two relatively and uniformly moving clocks are spatially separated except at one event.  Comparing the readings of the two clocks when spatially separated requires additional spatially separated clocks synchronized and stationary in their respective object's frame of reference
But, we find that clocks synchronized in one object's frame are not synchronized in the other relatively moving object's frame.  Thus, the relative velocity time dilation is symmetric without contradiction.  We can't say that one or the other clock is absolutely running slower.
Now, within the context of Special Relativity, acceleration is absolute, i.e., an object's accelerometer either reads 0 or it doesn't.
And, a fundamental result in SR is that a clock along an accelerated worldline through two events in spacetime records less elapsed time between those events than a clock along an unaccelerated world line through the same two events.
Since, in this case, an accelerated clock and an unaccelerated clock are co-located at two different events, the two clocks can be directly compared and, in this case, the time dilation is absolute - the accelerated clock absolutely shows less elapsed time than the unaccelerated clock.  

A:

Let me present a slightly different perspective to Alfred's answer, although I'm basically saying the same thing.
I suspect you've got hung up on the idea that velocity causes the relativistic effects like time dilation, but the underlying cause is something different. All the weird effects in SR are caused by a fundamental symmetry of spacetime, which is that the proper time, $\tau$, is an invarient i.e. it is the same for all users.
Suppose we take any two spacetime points $(t_1, x_1, y_1, z_1)$ and $(t_2, x_2, y_2, z_2)$ then the 4-vector joining them is $(\Delta t, \Delta x, \Delta y, \Delta z)$, where $\Delta t = t_2 - t_1$ and so on. The proper time is defined as:
$$ c^2\Delta\tau^2 = c^2\Delta t^2 - \Delta x^2 - \Delta y^2 - \Delta z^2 $$
Or more concisely:
$$ \Delta\tau^2 = \eta_{ab} \Delta x^a \Delta x^b $$
where $\eta$ is the Minkowski metric and we adopt the usual convention of setting $c = 1$.
The quantity $\Delta\tau$ is an invarient and all observers looking at the two spacetime points will measure the same value for $\Delta\tau$ regardless of where they are or how fast they are moving or accelerating.
To see why velocity has an effect on time and space consider this:
Start in your rest frame and measure some infinitesimal time interval $dt$ with your stopwatch. In your frame the interval between starting and stopping the stopwatch is just $(dt, 0, 0, 0)$ and therefore the proper time $d\tau$ is just equal to your stopwatch time $dt$. (I've sneakily switched from $\Delta$ to $d$ because if you're considering accelerated frames you need toi integrate $d\tau$ to get the $\Delta\tau$)
Now consider some frame that moves between you starting and stopping the stopwatch. It doesn't matter whether the frame moves at constant velocity or whether it accelerates in some manner. Because in this frame the stopwatch has moved while it was timing the interval will be of the form $(dt', dx', dy', dz')$ i.e. in this frame the spatial parts of the interval won't be zero. But we require that $d\tau' = d\tau$ because the proper time is an invarient. Equating the two proper times gives us:
$$ dt^2 = dt'^2 - dx'^2 - dy'^2 -dz'^2 $$
And because the spatial terms are nonzero this means $dt^2 < dt'^2$ i.e. the times in the two frames are different and we have time dilation.
Note that I haven't restricted how the two frames have moved relative to each other, only that they have moved. So you can't say the time dilation is due to velocity or due to acceleration, just that it's due to relative motion.

