Client Fetching: We don't even start fetching data until a component fully mounts. Markup is served from server -> JS loads and executes -> JS fetches data -> waits for data -> renders data. This is slow but useful when we don't need data until we explicitly request it. i.e. when the user clicks a button.