- Fires after render (to virtual DOM) and browser paint
- Will not block the browser from updating the screen as it runs asynchronously
- Useful for side effects which are not concerned with DOM information
- Similar to componentDidMount/componentDidUpdate
- Runs synchronously run after the DOM has been modified