User macro extend the functionality of Confluence. They can be created without any further development resources directly within the Confluence server.
User macros are useful to perform certain tasks within a page.
In contrast to macros they can be written and managed directly within Confluence without the need developing a plugin. A user macro module allows you to distribute your user macros.
More information on user macros.