Steve Souders:
Comparing the ASYNC and DEFER waterfalls, we see that using DEFER makes DOM Interactive fire sooner and allows rendering to proceed more quickly.
Even though <script async></script>
is more commonly seen in the wild, defer
is typically preferable as they can never block other syncronous scripts, as well as load in predictable source order.