 <p>I hit a similar issue and solved it using version 1.1.4 of <a href="https://github.com/google/google-api-php-client" rel="nofollow">google-api-php-client</a></p> <p>Assuming the following code is used to redirect a user to the Google authentication page:</p> <pre><code> $client = new Google_Client(); $client-&gt;setAuthConfigFile('/path/to/config/file/here'); $client-&gt;setRedirectUri('https://redirect/url/here'); $client-&gt;setAccessType('offline'); //optional $client-&gt;setScopes(['profile']); //or email $auth_url = $client-&gt;createAuthUrl(); header('Location: ' . filter_var($auth_url, FILTER_SANITIZE_URL)); exit(); </code></pre> <p>Assuming a valid authentication code is returned to the <code>redirect_url</code>, the following will generate a token from the authentication code as well as provide basic profile information:</p> <pre><code> //assuming a successful authentication code is returned $authentication_code = 'code-returned-by-google'; $client = new Google_Client(); //.... configure $client object $client-&gt;authenticate($authentication_code); $token_data = $client-&gt;getAccessToken(); //get user email address $google_oauth =new Google_Service_Oauth2($client); $google_account_email = $google_oauth-&gt;userinfo-&gt;get()-&gt;email; //$google_ouath-&gt;userinfo-&gt;get()-&gt;familyName; //$google_ouath-&gt;userinfo-&gt;get()-&gt;givenName; //$google_ouath-&gt;userinfo-&gt;get()-&gt;name; </code></pre> <p>However, location is not returned. <a href="https://support.google.com/youtube/answer/1637615?hl=en-GB" rel="nofollow">New YouTube accounts don't have YouTube specific usernames</a> </p>