You would make use of the login_redirect filter.
The example in the documentation looks a lot like what you are asking:
/**
* Redirect user after successful login.
*
* @param string $redirect_to URL to redirect to.
* @param string $request URL the user is coming from.
* @param object $user Logged user's data.
* @return string
*/
function wpse306427_login_redirect( $redirect_to, $request, $user ) {
//is there a user to check?
if (isset($user->roles) && is_array($user->roles)) {
//check for subscribers
if (in_array('subscriber', $user->roles)) {
// redirect them to another URL, in this case, the homepage
$redirect_to = home_url();
}
}
return $redirect_to;
}
add_filter( 'login_redirect', 'wpse306427_login_redirect', 10, 3 );
You would put this code in a plug-in or in your theme’s function.php.