GetClauseAppGetClauseApp
Third-Party Services
GitHub OAuth logo

GitHub OAuth

GitHub OAuth Privacy Guide

GitHub OAuth Authentication is an identity and authorization service that allows third-party applications to request access to a user's GitHub account data without requiring the user's password. According to GitHub's official documentation, OAuth 2.0 is the protocol that enables external applications to request authorization to access private details in a user's GitHub account. When developers integrate GitHub OAuth into their applications, they are implementing a standardized authentication flow where users can grant specific permissions (called scopes) to the application, allowing it to perform actions on the user's behalf or access particular types of data from their GitHub account. GitHub OAuth operates as part of GitHub's broader platform, which is owned by Microsoft Corporation (GitHub's parent company since the 2018 acquisition). According to the GitHub Privacy Statement effective April 27, 2026, GitHub, Inc. and GitHub B.V. act as Data Controllers for personal data processed through their services. When developers use GitHub OAuth in their applications, they are establishing a data flow where GitHub authenticates the user, the user grants permissions, and GitHub then provides the application with an access token that can be used to access GitHub's API on the user's behalf. The OAuth flow enables applications to obtain different levels of access depending on the scopes requested. These can range from basic read-only access to public information, to write access for modifying repositories, to access for reading private email addresses or managing organization memberships. According to GitHub's documentation, OAuth Apps authenticate as a single user and the access token inherits all permissions that the user has, limited only by the scopes granted during authorization.

Updated May 1, 2026·Official docs ↗

GitHub OAuth

GitHub OAuth Authentication is an identity and authorization service that allows third-party applications to request access to a user's GitHub account data without requiring the user's password. According to GitHub's official documentation, OAuth 2.0 is the protocol that enables external applications to request authorization to access private details in a user's GitHub account. When developers integrate GitHub OAuth into their applications, they are implementing a standardized authentication flow where users can grant specific permissions (called scopes) to the application, allowing it to perform actions on the user's behalf or access particular types of data from their GitHub account.

GitHub OAuth operates as part of GitHub's broader platform, which is owned by Microsoft Corporation (GitHub's parent company since the 2018 acquisition). According to the GitHub Privacy Statement effective April 27, 2026, GitHub, Inc. and GitHub B.V. act as Data Controllers for personal data processed through their services. When developers use GitHub OAuth in their applications, they are establishing a data flow where GitHub authenticates the user, the user grants permissions, and GitHub then provides the application with an access token that can be used to access GitHub's API on the user's behalf.

The OAuth flow enables applications to obtain different levels of access depending on the scopes requested. These can range from basic read-only access to public information, to write access for modifying repositories, to access for reading private email addresses or managing organization memberships. According to GitHub's documentation, OAuth Apps authenticate as a single user and the access token inherits all permissions that the user has, limited only by the scopes granted during authorization.

Official documentation: Open docs

Data Categories Collected

When a developer implements GitHub OAuth authentication in their application, several categories of data are involved in the authentication process and subsequent API interactions. According to GitHub's General Privacy Statement and OAuth documentation, the data categories can be understood through different stages of the OAuth flow and usage.

Data Collected During OAuth Authorization Flow: When a user initiates the GitHub OAuth flow from a third-party application, GitHub collects information about the authorization request itself. This includes the OAuth App's Client ID, the requested scopes (permissions), the state parameter (if provided for CSRF protection), and redirect URI. During the authentication process, GitHub processes the user's login credentials to verify their identity, though according to GitHub's security practices, these credentials are never shared with the third-party application. Instead, after successful authentication and user consent, GitHub generates an access token and returns it to the application via the callback URL.

User Profile Information Accessible Via OAuth: Depending on the scopes granted, OAuth Apps can access various categories of user information through GitHub's API. According to GitHub's OAuth scopes documentation, basic user information that can be accessed includes the GitHub username (handle), display name, public email address, avatar URL, profile bio, location, blog/website URL, company affiliation, and account creation date. With the user:email scope, applications can access private email addresses associated with the GitHub account. With the read:user scope, applications can access additional profile information including whether the account has two-factor authentication enabled, plan information, and follower/following counts.

Repository and Organization Data: OAuth tokens with repository-related scopes can access information about the user's repositories and organizations. According to GitHub's scoping system, the repo scope grants full access to all public and private repositories that the user can access, including repository metadata, commit history, issues, pull requests, and repository contents. The read:org scope provides read access to organization membership information and team memberships. It is important to note that when a user grants an OAuth App access, according to GitHub's documentation, they grant permissions to all repositories they have access to in their account, including any organizations they belong to that haven't blocked third-party access. This broad access model is one of the key differences between OAuth Apps and the more granular GitHub Apps.

Activity and Usage Data: When OAuth Apps interact with GitHub's API on behalf of users, GitHub processes various types of activity data. According to the GitHub Privacy Statement, this includes API request information such as endpoints accessed, request timestamps, IP addresses, user agent strings, and rate limiting data. For applications that have been granted write permissions, GitHub also tracks the actions taken by the application on the user's behalf, such as commits made, issues created, or repository settings modified.

Device and Technical Information: According to the Privacy Statement, when users access GitHub services (including during OAuth authorization flows), GitHub automatically collects device and technical data including IP addresses, browser type and version, operating system details, referring URLs, and device identifiers. This information is collected to provide security, detect abuse, and ensure the proper functioning of GitHub's services.

Third-Party Service Integration Data: When users link third-party services to their GitHub account through OAuth or other integration mechanisms, according to the Privacy Statement, GitHub receives information based on the settings with those services. This can include details like name and email from services like Google when used for authentication purposes.

It is critical for developers to understand that the data their OAuth application can access is determined by two factors: the scopes they request during the authorization flow, and the permissions that the user already has on GitHub. According to GitHub's documentation, an OAuth token cannot grant additional access capabilities beyond what the user already possesses. For example, if an application requests the admin:org scope but the user is not an organization owner, the application will not be granted administrative access to that organization.


Legal Basis for Processing

GitHub's data processing for OAuth authentication operates under multiple legal bases depending on the specific data processing activity and the jurisdiction of the users involved. According to the GitHub Data Protection Agreement and Privacy Statement, these legal foundations can be categorized as follows.

Contractual Necessity for Service Provision: When users create GitHub accounts and use GitHub's authentication services, the fundamental processing of account data and authentication credentials is necessary to perform the contract between GitHub and the user. According to GitHub's Terms of Service, when users agree to use GitHub's services, they enter into a contractual relationship that necessitates certain data processing activities. The OAuth authentication system processes user credentials and generates access tokens as part of fulfilling this contractual obligation to provide identity and authentication services.

User Consent for Third-Party Access: For the specific act of granting third-party OAuth applications access to a user's GitHub data, the legal basis is explicit user consent. According to GitHub's OAuth authorization flow documentation, users must actively authorize each OAuth App by reviewing the requested permissions and clicking an authorization button. This consent mechanism is designed to be informed and specific - users see exactly which scopes (permissions) the application is requesting before they grant access. Users can revoke this consent at any time by removing the OAuth App's authorization from their GitHub account settings.

Legitimate Interests for Security and Service Improvement: According to the GitHub Privacy Statement updated March 25, 2026, GitHub processes certain data based on legitimate business interests. These interests include security monitoring to detect and prevent abuse of the OAuth system, fraud prevention, maintaining the security and integrity of GitHub's services, and troubleshooting technical issues. For example, GitHub may analyze patterns of OAuth authorization requests to detect potential phishing attempts or malicious applications. According to GDPR principles underlying GitHub's DPA, these legitimate interests are balanced against users' privacy rights, and users have the right to object to processing based on legitimate interests.

Compliance with Legal Obligations: In certain circumstances, GitHub processes data to comply with legal requirements. According to the Data Protection Agreement, this includes responding to valid legal process such as subpoenas or court orders, enforcing GitHub's Terms of Service and Acceptable Use Policies, and meeting regulatory reporting obligations in various jurisdictions.

GitHub's Role as Data Controller vs. Processor: The distinction between when GitHub acts as a Data Controller versus a Data Processor is important for understanding legal responsibilities. According to the GitHub Data Protection Agreement effective October 2024, when organizations use GitHub Enterprise Cloud, GitHub Enterprise, GitHub Teams, or GitHub Copilot under customer agreements, GitHub typically acts as a Data Processor, processing customer data according to the customer's instructions. However, according to Section 3.C of the DPA, GitHub also processes some Customer Personal Data as an independent Controller for specific purposes such as account management, billing, communications, and service improvement. These independent controller activities are conducted in compliance with Data Protection Requirements and the GDPR, and are performed in a manner consistent with purposes outlined in the GitHub Privacy Statement.

For developers implementing OAuth, understanding these legal bases is crucial because when they integrate GitHub OAuth into their applications, they must independently establish their own legal basis for collecting and processing the data obtained through GitHub's OAuth system. Simply having a valid OAuth token does not automatically confer legal authority to process the user's data - developers must ensure they have proper legal grounds under applicable privacy laws.


Standard Sub-processors

According to GitHub's official Subprocessor documentation, GitHub engages various sub-processors to provide and support its services, including the OAuth authentication system. The GitHub Subprocessor List, which is governed by the GitHub Data Protection Agreement, identifies all entities authorized to process customer or personal data on behalf of GitHub.

Third-Party Subprocessors: As documented on the GitHub Subprocessors page last updated in 2026, GitHub engages multiple third-party organizations to support its infrastructure and services. These include cloud infrastructure providers such as Amazon Web Services Inc. (AWS), which provides cloud hosted infrastructure, data hosting, AI inference and AI services with processing locations and corporate headquarters in the United States; Microsoft (Azure), which provides cloud hosted infrastructure, data hosting, AI inference and AI services with processing locations in the United States and Canada and corporate headquarters in the United States; and Google Cloud Platform (GCP), which provides cloud hosted infrastructure, AI inference and AI services with processing locations in the United States, Belgium, and Singapore and corporate headquarters in the United States.

According to the subprocessor list, GitHub also utilizes content delivery services including Cloudflare and Fastly, both headquartered and processing data in the United States. For AI-related services that may touch certain GitHub features, subprocessors include Anthropic PBC, OpenAI, xAI, and Fireworks AI. For customer support operations, GitHub engages FullStory Inc., Zendesk, and Moveworks. Technical services are provided by Microsoft with operations in Australia, Brazil, Canada, France, Japan, Norway, Spain, Sweden, Switzerland, United Kingdom, and United States.

Additional subprocessors identified in the official list include Elasticsearch Inc. for cloud hosted infrastructure, Hewlett-Packard Limited for cloud hosted infrastructure, LambdaTest for cloud hosted infrastructure, NexMo Inc. (Vonage) and Twilio (SendGrid) for SMS notification providers supporting two-factor authentication, Obsidian Security and Tines Automation Inc. for security management, Oracle America Inc. for cloud hosted infrastructure, and Pusher for building and managing real-time infrastructure for web and mobile applications.

GitHub Subsidiaries as Subprocessors: According to the official documentation, GitHub also utilizes its own subsidiaries located in various jurisdictions to support global operations. These subsidiaries include GitHub Australia Pty Ltd in Australia, GitHub BV in the Netherlands, GitHub Canada ULC in Canada, GitHub Germany GmbH in Germany, GitHub India Pty Ltd in India, npm Inc in the United States, and Semmle Inc in the United States.

Subprocessor Notification and Objection Rights: According to the GitHub Data Protection Agreement, GitHub commits to publishing the names of any new subprocessors for its online services at least 30 days in advance of the subprocessor's authorization to perform services that may involve access to customer data or personal data. Customers can receive notifications of updates to the Subprocessor list by following the instructions provided in GitHub's notification system. According to Section 6 of the DPA, if a customer does not approve of a new Subprocessor, they may terminate any subscription for the affected Online Services without penalty by providing written notice of termination before the end of the relevant notice period.

Developer Implications: For developers integrating GitHub OAuth, this means that when users authenticate through GitHub and when the application subsequently interacts with GitHub's API using OAuth tokens, the underlying infrastructure processing these requests may involve any of the subprocessors listed. Developers should account for this in their own privacy policies and data processing agreements, particularly when serving users in jurisdictions with strict requirements around sub-processing arrangements or data localization. The global nature of GitHub's subprocessor network means that authentication data and API requests may be processed in multiple countries, which has implications for international data transfer compliance.


International Data Transfer

GitHub's approach to international data transfers for OAuth authentication and related services reflects its global infrastructure and the complex regulatory landscape surrounding cross-border data flows. According to GitHub's Data Protection Agreement and Privacy Statement, several mechanisms are employed to ensure lawful international transfers.

Data Transfer Mechanisms - Standard Contractual Clauses: For transfers of personal data from the European Economic Area, United Kingdom, and Switzerland to countries that have not received an adequacy decision from the European Commission, GitHub relies on Standard Contractual Clauses (SCCs). According to Section 7.B of the GitHub Data Protection Agreement, any transfer of Customer Personal Data from EU member states, EEA, Switzerland, or the United Kingdom to countries where adequate protection has not been determined shall be undertaken subject to appropriate safeguards. The DPA explicitly incorporates the European Commission's Standard Contractual Clauses approved under the GDPR. These SCCs provide legally binding contractual commitments that protect personal data transferred outside the EEA/UK/Switzerland.

According to Section 7.C of the DPA, for Controller to Processor and Processor to Processor transfers, the Standard Contractual Clauses apply with GitHub designated as the data importer and the customer as the data exporter. The DPA specifies technical and organizational measures that GitHub implements to ensure an appropriate level of security for transferred data, taking into account the nature, scope, context and purpose of the processing.

Data Privacy Framework Certification: According to the Data Protection Agreement, GitHub has self-certified to the EU-US Data Privacy Framework and, where applicable, the UK Extension to the EU-US Data Privacy Framework and the Swiss-US Data Privacy Framework. These framework certifications provide alternative transfer mechanisms for certain data flows from Europe to the United States. GitHub's DPA indicates that transfers may be undertaken subject to these framework certifications in addition to or instead of Standard Contractual Clauses.

Technical and Organizational Safeguards: To supplement the contractual transfer mechanisms, according to the DPA, GitHub implements various technical and organizational measures. These include encryption of personal data both in transit and at rest (as detailed in Section 4 and Table 1 of the DPA), access controls limiting which personnel can access customer data, security monitoring and incident response procedures, and regular security assessments and certifications (including SOC 2 Type 2 and ISO 27001). These supplementary measures are designed to address concerns raised by European data protection authorities following the Schrems II decision regarding the adequacy of protection for data transferred to the United States.

Processing Locations and Data Residency: According to Section 7.A of the GitHub Data Protection Agreement, customers appoint GitHub to transfer Customer Personal Data to the United States or any other country in which GitHub or its Subprocessors operate, and to store and process Customer Personal Data to provide the Online Services. The DPA indicates that GitHub may transfer and process Customer Personal Data to and in the United States, to third-party countries including those outside the European Economic Area without an adequacy statement from the European Commission, and to Subprocessors, GitHub Affiliates, and professional advisors.

As documented in the Subprocessor List, GitHub's infrastructure spans multiple countries. Primary cloud infrastructure providers (AWS, Microsoft Azure, Google Cloud Platform) process data in the United States, with some operations extending to other regions such as Belgium, Singapore, and Canada. Customer support subprocessors operate from locations including Australia, Brazil, Canada, France, Japan, Norway, Spain, Sweden, Switzerland, United Kingdom, and United States.

Unlike some cloud services that offer granular data residency controls, GitHub's OAuth authentication system does not currently provide options for developers to specify which geographic region should handle authentication requests or store OAuth tokens. According to GitHub's architecture, OAuth authentication requests are processed through GitHub's global infrastructure, which may involve data transfers across multiple jurisdictions.

Developer Responsibilities for International Transfers: For developers implementing GitHub OAuth, the international transfer implications are multi-layered. When a developer's application uses GitHub OAuth to authenticate users, several data transfers may occur: the user's authentication occurs through GitHub's infrastructure (potentially involving transfers to the United States and other GitHub subprocessor locations), the OAuth access token is transmitted from GitHub to the developer's application (the location of which depends on where the developer's servers are hosted), and subsequent API requests using the OAuth token travel from the developer's infrastructure to GitHub's API endpoints (again, potentially crossing international borders).

Developers must account for these data flows in their own privacy policies and, where applicable, their own Data Protection Agreements with users or customers. If a developer in the European Union uses GitHub OAuth to authenticate European users, they should understand that according to GitHub's infrastructure and subprocessor arrangements, authentication data will likely be transferred to the United States. Developers are responsible for ensuring they have appropriate legal mechanisms in place for these transfers, which may include incorporating relevant Standard Contractual Clauses into their own agreements or ensuring they have other valid transfer mechanisms under applicable law.

Transparency and User Information: According to best practices for OAuth implementations and privacy regulations like GDPR, developers using GitHub OAuth should clearly disclose in their privacy policies that authentication is handled by GitHub, that data may be transferred internationally as part of GitHub's service provision, and direct users to GitHub's own privacy policy and data protection documentation for details about GitHub's data handling practices.


Developer Responsibility

When developers integrate GitHub OAuth authentication into their applications, they assume significant privacy compliance responsibilities that extend beyond the technical implementation. According to GitHub's documentation and general privacy law principles, developers are the data controllers for how they use the data obtained through OAuth, even though GitHub controls the authentication process itself.

Privacy Policy Disclosure Requirements: Developers must maintain clear, accessible privacy policies that specifically disclose their use of GitHub OAuth and how they process data obtained through this authentication method. According to privacy law requirements and GitHub's own documentation guidance, these disclosures should include several key elements. Developers must identify that they use GitHub OAuth for authentication, specifying that authentication and authorization are handled by GitHub on behalf of their application. They should describe what GitHub data their application requests access to, listing the specific OAuth scopes requested and what types of data each scope permits the application to access. They must explain how the collected data is used, detailing what the application does with the user's GitHub profile information, repository data, or other accessible information. Developers should disclose that data is shared with GitHub as part of the authentication process, noting that GitHub acts as an authentication provider and processes user credentials.

According to GitHub's OAuth documentation, developers should also explain how users can revoke access to their application through GitHub's authorization settings. Privacy policies should reference GitHub's own Privacy Statement to provide users with complete information about how their data is handled during authentication.

Obtaining Proper User Consent: In jurisdictions with strict consent requirements such as the European Union under GDPR, developers bear responsibility for ensuring that users provide informed, freely given consent before their application initiates the GitHub OAuth flow. According to GDPR principles, consent must be specific, informed, and unambiguous. This means developers should clearly explain why they are requesting GitHub authentication and what data they will access before redirecting users to GitHub's authorization page.

The OAuth authorization page itself shows users which scopes are being requested, but according to best practices, developers should prepare users for this by explaining in plain language what permissions they're asking for and why. After users grant authorization, developers should respect the actual scopes that were granted, which may be less than what was requested if users modify the authorization page or if GitHub restricts certain scopes.

Implementing Minimal Data Access Principles: Privacy regulations generally require that data collection be limited to what is necessary for specified purposes. According to GitHub's OAuth best practices documentation, developers should carefully evaluate which scopes they actually need and request only those scopes. For example, if an application only needs to identify users by their GitHub username and email address, it should request the user:email scope rather than the broad repo scope which grants access to all of the user's repositories.

The principle of data minimization extends to how developers use OAuth tokens. According to GitHub's security documentation, developers should not store OAuth tokens longer than necessary, implement appropriate security measures to protect stored tokens, and have processes in place for token revocation and rotation. If a developer's application is compromised, the impact on users is proportional to both the scopes that were granted and how well the tokens were protected.

Managing Scope Changes and Revocations: According to GitHub's OAuth documentation, developers must handle cases where users modify the scopes after initial authorization or revoke access entirely. Users can edit token scopes through their GitHub settings, effectively granting the application less access than originally requested. Developers should implement error handling to detect when API requests fail due to insufficient permissions and respond appropriately, either by requesting users to re-authorize with the necessary scopes or by gracefully degrading functionality.

When users revoke an OAuth application's access, according to GitHub's systems, any access tokens generated for that authorization become invalid. Developers should have processes in place to handle revoked tokens, remove any stored tokens that are no longer valid, and inform users about what data the application may have already collected while authorization was active.

Compliance with GitHub's OAuth App Policies: Beyond general privacy law, GitHub has specific policies that govern OAuth applications. According to the GitHub Acceptable Use Policies, any application collecting data from GitHub must comply with the GitHub Privacy Statement, particularly regarding the collection of personal information. If developers collect any personal information through their use of GitHub OAuth, they agree to use that information only for the purpose for which the user authorized it, reasonably secure any gathered personal information, and respond promptly to complaints, removal requests, and 'do not contact' requests.

GitHub's OAuth app policies also include security requirements. According to best practices documentation, developers should never use a personal access token or GitHub password as alternatives to proper OAuth implementation, securely store client secrets (for server-side applications), implement PKCE (Proof Key for Code Exchange) for public clients that cannot securely store secrets, conduct regular security audits of applications that use GitHub OAuth, and have incident response plans for handling compromised client secrets or access tokens.

Handling Enterprise and Organization Data: When users authenticate via GitHub OAuth and grant access to organization resources, according to GitHub's documentation, additional responsibilities arise. OAuth Apps can access organization data when a user who is a member of the organization grants access, unless the organization has enabled OAuth App access restrictions. In such cases, according to GitHub's policy, organization owners must explicitly approve the OAuth App before it can access the organization's resources.

Developers must be particularly careful with data from organizations because, according to GitHub's guidance, a single user's authorization could potentially grant the application access to an organization's private repositories and sensitive data. Developers should clearly communicate to users that by authorizing the application, they may be granting access to organization resources, implement checks to verify whether users have appropriate authority to grant such access, and where possible, recommend that organizations use GitHub Apps instead of OAuth Apps for more fine-grained control.

Data Subject Rights and User Requests: Under privacy regulations like GDPR and CCPA, users have various rights regarding their data, including rights to access, correction, deletion, and portability. Although GitHub provides some tools to help developers fulfill these obligations (such as API endpoints for accessing and deleting data), developers remain primarily responsible for responding to user rights requests.

Developers must implement processes to receive user rights requests (typically through their privacy policy contact information), determine which data was obtained through GitHub OAuth and which data was generated by the application itself, use GitHub's API to delete or export data stored on GitHub (where applicable and where the application has the necessary permissions), delete any data the application has stored locally or in its own databases, and respond to users within legally required timeframes (e.g., 30 days under GDPR).

Security and Confidentiality Obligations: According to GitHub's DPA and general security best practices, developers who process data obtained through GitHub OAuth must implement appropriate technical and organizational measures to protect that data. This includes encrypting OAuth tokens in transit and at rest, implementing access controls to limit who within the developer's organization can access user data, monitoring for security incidents and having breach notification procedures, regularly updating dependencies and security patches, and conducting security assessments appropriate to the sensitivity of the data accessed.

Children's Privacy Considerations: If developers create applications that may be used by children, they face additional compliance obligations under laws like COPPA (Children's Online Privacy Protection Act) in the United States. According to COPPA requirements, applications directed at children under 13 or that knowingly collect data from children must obtain verifiable parental consent before collecting personal information. Developers using GitHub OAuth should note that GitHub's Terms of Service require users to be at least 13 years old, but developers may have additional obligations if their specific application is directed at children.

Continuous Monitoring and Updates: GitHub periodically updates its privacy policies, terms of service, data protection agreements, and OAuth implementation requirements. According to the GitHub Privacy Statement, material changes are communicated to users 30 days before they become effective. Developers are responsible for staying informed about these changes, updating their own privacy policies to reflect changes in how GitHub processes data, modifying their OAuth implementations if GitHub changes technical requirements or best practices, and communicating material changes to their own users.

The fundamental principle underlying all these responsibilities is that integrating GitHub OAuth does not transfer privacy compliance obligations to GitHub. According to GitHub's DPA and the structure of data controller/processor relationships, developers who use GitHub OAuth remain controllers of the data they collect and process through their applications. GitHub is a controller for the authentication data it processes and may be a processor for certain customer data under enterprise agreements, but the developer's obligations to their users are independent and must be fulfilled regardless of GitHub's own compliance status.


Official Links

For developers seeking authoritative information and legal documentation regarding GitHub OAuth authentication and data processing, GitHub maintains several official resources:

Primary Privacy Documentation:

GitHub General Privacy Statement (Effective April 27, 2026)https://docs.github.com/en/site-policy/privacy-policies/github-general-privacy-statement - This is the main privacy statement covering how GitHub processes personal data across its services.https://docs.github.com/en/site-policy/privacy-policies/github-general-privacy-statementGitHub Privacy Policies OverviewCentral hub for all privacy-related policies.https://docs.github.com/en/site-policy/privacy-policies GitHub Trust Center - PrivacyOverview of GitHub's privacy principles, approach, and commitments.https://github.com/trust-center/privacy

Data Protection Agreements:

GitHub Data Protection Agreement (Main)The primary DPA applicable to GitHub Enterprise Cloud, GitHub Enterprise (Unified), GitHub Teams, and GitHub Copilot.https://github.com/customer-terms/github-data-protection-agreementGitHub Data Protection Agreement (October 2024 PDF)Downloadable PDF version of the DPA with full legal terms.https://assets.ctfassets.net/8aevphvgewt8/DaflLjyuIt6un69xg3n6W/375560a9e93004190548b6c581b81ef3/GITHUB-202410-GitHubDataProtectionAgreement.pdfGitHub Data Protection Agreement (October 2025 PDF)Updated version of the DPA.https://assets.ctfassets.net/8aevphvgewt8/9rRh60u9m8AJGCKPHSnkI/f665de2992d6aa66bab425d19a559dd1/TPL-202510-GitHubDataProtectionAgreement.pdf

Subprocessor Information:

GitHub Subprocessors ListOfficial list of third-party subprocessors and GitHub subsidiaries involved in data processing, updated regularly.https://docs.github.com/en/site-policy/privacy-policies/github-subprocessorsGitHub Subprocessors (Markdown Source)Open source version of the subprocessor list hosted on GitHub's docs repository.https://github.com/github/docs/blob/main/content/site-policy/privacy-policies/github-subprocessors.md

OAuth Specific Documentation:

Authorizing OAuth AppsUser-facing documentation explaining how OAuth app authorization works.https://docs.github.com/en/apps/oauth-apps/using-oauth-apps/authorizing-oauth-appsCreating an OAuth AppGuide for developers on creating and registering OAuth applications.https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/creating-an-oauth-appBuilding OAuth AppsComprehensive developer documentation for OAuth app development.https://docs.github.com/en/apps/oauth-apps/building-oauth-appsAuthenticating to the REST API with an OAuth AppTechnical guide for implementing OAuth authentication flows.https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/authenticating-to-the-rest-api-with-an-oauth-appBest Practices for Creating an OAuth AppSecurity and implementation best practices.https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/best-practices-for-creating-an-oauth-appScopes for OAuth AppsDetailed documentation of available OAuth scopes and their permissions.https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/scopes-for-oauth-appsAbout OAuth App Access RestrictionsInformation about how organizations can control OAuth app access.https://docs.github.com/en/organizations/managing-oauth-access-to-your-organizations-data/about-oauth-app-access-restrictions

Terms of Service and Acceptable Use:

GitHub Terms of ServiceMain terms governing use of GitHub services.https://docs.github.com/en/site-policy/github-terms/github-terms-of-serviceGitHub Acceptable Use PoliciesPolicies governing acceptable use, including data collection requirements.https://docs.github.com/en/site-policy/acceptable-use-policies/github-acceptable-use-policies

Privacy Policy Updates and Changes:

Updates to Privacy Statement and Terms of Service (March 25, 2026)Blog post explaining recent changes to privacy policies, including data sharing with affiliates and AI model training.https://github.blog/changelog/2026-03-25-updates-to-our-privacy-statement-and-terms-of-service-how-we-use-your-data/

Additional Resources:

GitHub Site Policy RepositoryOpen source repository containing all of GitHub's site policies, including privacy policies, terms, and guidelines. Available under Creative Commons Zero (CC0) license.https://github.com/github/site-policyGitHub Trust CenterComprehensive resource for GitHub's security, privacy, and compliance information.https://github.com/trust-center

Developers should bookmark these resources and consult them regularly, as GitHub updates its policies and documentation periodically. According to GitHub's practices, material changes to the Privacy Statement are announced 30 days before taking effect, providing developers time to review changes and update their own documentation accordingly. The Site Policy Repository on GitHub provides a transparent change history, allowing developers to track exactly what has changed in GitHub's policies over time.

Complete Reference List

All information in this profile was derived from the following official sources accessed in May 2026:

Primary Policy and Legal Documents

GitHub General Privacy Statement (Effective April 27, 2026)https://docs.github.com/site-policy/privacy-policies/github-general-privacy-statementGitHub Privacy Policies Overviewhttps://docs.github.com/en/site-policy/privacy-policiesGitHub Trust Center - Privacyhttps://github.com/trust-center/privacyGitHub Terms of Servicehttps://docs.github.com/en/site-policy/github-terms/github-terms-of-serviceGitHub Acceptable Use Policieshttps://docs.github.com/en/site-policy/acceptable-use-policies/github-acceptable-use-policies

Data Protection Agreements

GitHub Data Protection Agreement (Main)https://github.com/customer-terms/github-data-protection-agreementGitHub Data Protection Agreement (October 2024 PDF)https://assets.ctfassets.net/8aevphvgewt8/DaflLjyuIt6un69xg3n6W/375560a9e93004190548b6c581b81ef3/GITHUB-202410-GitHubDataProtectionAgreement.pdfGitHub Data Protection Agreement (October 2025 PDF)https://assets.ctfassets.net/8aevphvgewt8/9rRh60u9m8AJGCKPHSnkI/f665de2992d6aa66bab425d19a559dd1/TPL-202510-GitHubDataProtectionAgreement.pdfGitHub Data Protection Agreement (September 2023 PDF)https://assets.ctfassets.net/8aevphvgewt8/DaflLjyuIt6un69xg3n6W/9e51773d6687d4d5f4c29fc63c115d24/GITHUB-20230922-GitHubDataProtectionAgreement.pdfGitHub Data Protection Agreement (May 2022 PDF)https://assets.ctfassets.net/8aevphvgewt8/5PTd0KhsRi32Dd6nFoRPYj/d5a92a59bb504016f5cc35117ccfe1d3/GITHUB-20220518-DataProtectionAgreement-UpdatedSignatory.pdf

Subprocessor Documentation

GitHub Subprocessors List (Official Page)https://docs.github.com/en/site-policy/privacy-policies/github-subprocessorsGitHub Subprocessors (Markdown Source)https://github.com/github/docs/blob/main/content/site-policy/privacy-policies/github-subprocessors.md

OAuth Authentication Documentation

Authorizing OAuth Appshttps://docs.github.com/en/apps/oauth-apps/using-oauth-apps/authorizing-oauth-appsCreating an OAuth Apphttps://docs.github.com/en/apps/oauth-apps/building-oauth-apps/creating-an-oauth-appBuilding OAuth Appshttps://docs.github.com/en/apps/oauth-apps/building-oauth-appsAuthenticating to the REST API with an OAuth Apphttps://docs.github.com/en/apps/oauth-apps/building-oauth-apps/authenticating-to-the-rest-api-with-an-oauth-appBest Practices for Creating an OAuth Apphttps://docs.github.com/en/apps/oauth-apps/building-oauth-apps/best-practices-for-creating-an-oauth-appScopes for OAuth Appshttps://docs.github.com/en/apps/oauth-apps/building-oauth-apps/scopes-for-oauth-appsAbout OAuth App Access Restrictionshttps://docs.github.com/en/organizations/managing-oauth-access-to-your-organizations-data/about-oauth-app-access-restrictions

Policy Updates and Announcements

Updates to Privacy Statement and Terms of Service: How we use your data (March 25, 2026)https://github.blog/changelog/2026-03-25-updates-to-our-privacy-statement-and-terms-of-service-how-we-use-your-data/FAQ: Privacy Statement update on Copilot data use for model traininghttps://github.com/orgs/community/discussions/188488

Additional Technical and Policy Resources

GitHub Privacy Statement (Scribd PDF Documentation)https://www.scribd.com/document/863999164/GitHub-Privacy-Statement-GitHub-DocsPrivacy Policy on GitHub Pages (Community Discussion)https://github.com/orgs/community/discussions/40768GitHub Site Policy Repositoryhttps://github.com/github/site-policyGitHub Data Protection Agreement Page (DPA Previews)https://docs.github.com/en/site-policy/github-terms/github-dpa-previews

Concluding Note

This Privacy & Data Handling Profile provides a comprehensive overview of GitHub OAuth Authentication's data processing practices as documented in official privacy policies, data protection agreements, and OAuth implementation documentation. However, this profile represents a snapshot of publicly available information and should be considered a starting point for developers' privacy due diligence, not a substitute for thorough legal analysis tailored to specific use cases.

Privacy compliance when using GitHub OAuth is highly contextual, depending on factors including the specific OAuth scopes requested, the nature of data processed by the developer's application, the geographic locations of users, and the particular privacy laws applicable in relevant jurisdictions. Developers are strongly encouraged to consult with qualified legal counsel to ensure their implementation of GitHub OAuth complies with GDPR, CCPA, IT Act 2000, and other applicable regulations.

Several key considerations deserve emphasis for developers implementing GitHub OAuth authentication:

Understand the Scope System: GitHub's OAuth scopes determine what data your application can access. Request only the minimal scopes necessary for your application's functionality, and clearly explain to users why each scope is needed. Remember that broader scopes like repo grant access to all of a user's repositories, which may include sensitive organizational data.

Recognize Your Role as Data Controller: When you use GitHub OAuth, you are the data controller for how you use the data obtained through OAuth tokens, even though GitHub controls the authentication process. This means you have independent obligations to users under privacy laws, and you cannot simply defer to GitHub's privacy policy.

Account for International Data Transfers: GitHub's infrastructure is global, with primary operations in the United States. If you serve users in the European Union or other jurisdictions with strict data transfer rules, understand that authentication data will likely be transferred internationally as part of GitHub's service provision.

Implement Proper Security Measures: OAuth tokens are sensitive credentials. Protect them appropriately through encryption, access controls, secure storage, regular rotation, and incident response procedures. A compromised token can grant attackers the same level of access to a user's GitHub account that your application legitimately holds.

Stay Informed About Changes: GitHub updates its privacy policies, data processing agreements, and OAuth implementation requirements periodically. According to GitHub's documentation, material changes are communicated 30 days in advance. Set up notifications and regularly review GitHub's official documentation to ensure continued compliance.

Provide Transparency to Users: Your privacy policy should clearly explain that you use GitHub for authentication, what data you access through GitHub's API, how you use that data, and how users can revoke your application's access. Direct users to GitHub's own privacy documentation for details about GitHub's data handling practices.

Prepare for User Rights Requests: Implement processes to handle data subject access requests, deletion requests, and other user rights under privacy regulations. This includes knowing how to use GitHub's API to delete or export data where applicable, and having systems in place to delete any data your application has stored.

The information presented here is derived from GitHub's official documentation as of May 2026 and is subject to change as GitHub updates its services, policies, and compliance frameworks. The March 2026 update to GitHub's Privacy Statement, which introduced changes around data sharing with affiliates for AI model training and expanded processing purposes, demonstrates the importance of continuous monitoring.

Developers should actively monitor GitHub's official channels including the GitHub Changelog, Site Policy Repository, and Trust Center for policy updates and maintain their own privacy documentation accordingly. The open-source nature of GitHub's Site Policy Repository (available under CC0 license) provides an excellent transparency mechanism, allowing developers to track exactly what has changed over time.


Legal Disclaimer

This profile is a summary of publicly available documentation from GitHub's Privacy Statement, Data Protection Agreement, and OAuth documentation. It is provided for informational purposes only and does not constitute legal advice. Developers should consult their own legal counsel to ensure compliance with applicable privacy laws including GDPR, CCPA, IT Act 2000, and other regulations relevant to their jurisdiction. The information presented here reflects GitHub's official documentation as of May 2026 and may be subject to change. Educational and informational purposes for developers implementing GitHub OAuth authentication. This document does not constitute legal advice and should not be relied upon as such. Consult qualified legal counsel for compliance guidance specific to your application and jurisdiction.