We demonstrate that the integration of the recently developed dynamic mode decomposition (DMD) with a multi-resolution analysis allows for a decomposition method capable of robustly separating complex systems into a hierarchy of multi-resolution time-scale components. A one-level separation allows for background (low-rank) and foreground (sparse) separation of dynamical data, or robust principal component analysis. The multi-resolution dynamic mode decomposition is capable of characterizing nonlinear dynamical systems in an equation-free manner by recursively decomposing the state of the system into low-rank terms whose temporal coefficients in time are known. DMD modes with temporal frequencies near the origin (zero-modes) are interpreted as background (low-rank) portions of the given dynamics, and the terms with temporal frequencies bounded away from the origin are their sparse counterparts. The multi-resolution dynamic mode decomposition (mrDMD) method is demonstrated on several examples involving multi-scale dynamical data, showing excellent decomposition results, including sifting the El Niño mode from ocean temperature data. It is further applied to decompose a video data set into separate objects moving at different rates against a slowly varying background. These examples show that the decomposition is an effective dynamical systems tool for data-driven discovery.