You can move the second request to the then block of the dependent first request,i.e., getTracks.
Also, as:you shouldn't mix then and await.
useEffect(() => {
const getTracks = async () => {
httpClient.get(`/track/${id}`)
.then((response) => {
setTrack(response.data);
httpClient.get(`/profile/${response.data.user}/`)
.then((response) => {
setUser(response.data);
})
})
}
getTracks();
}, [])