From over-exploitation of resources to urban pollution, sustaining well-being requires solving social dilemmas of cooperation. Often such dilemmas are studied assuming that individuals occupy fixed positions in a network or lattice. In spatial settings, however, agents can move, and such movements involve costs. Here we investigate how mobility costs impact cooperation dynamics. To this end, we study cooperation dilemmas where individuals are located in a two-dimensional space and can be of two types: cooperators–or cleaners, who pay an individual cost to have a positive impact on their neighbours–and defectors–or polluters, free-riding on others’ effort to sustain a clean environment. Importantly, agents can pay a cost to move to a cleaner site. Both analytically and through agent-based simulations we find that, in general, introducing mobility costs increases pollution felt in the limit of fast movement (equivalently slow strategy revision). The effect on cooperation of increasing mobility costs is non-monotonic when mobility co-occurs with strategy revision. In such scenarios, low (yet non-zero) mobility costs minimise cooperation in low density environments; whereas high costs can promote cooperation even when a minority of agents initially defect. Finally, we find that heterogeneity in mobility cost affects the final distribution of strategies, leading to differences in who supports the burden of having a clean environment.