How to Use the GitHub Profile Scraper

Sophie
Sophie This badge shows you’re hearing straight from the source! Team members are here to share insider tips, answer questions, and guide you through PhantomBuster with expert knowledge. They’re dedicated to helping you succeed and making sure your automation journey feels easy and exciting. PhantomBuster Official
  • Updated

Slot usage

1 slot

Estimated execution time

~15 seconds per profile

What you'll need

What you’ll get

  • Public GitHub profile details: bio, location, company, email (if visible)
  • Social links (LinkedIn, Twitter, YouTube, Twitch when available)
  • Repository metrics: pinned repos, popular repos, repo counts, stars
  • Engagement metrics: followers, following, yearly commits

    → See the full breakdown of all output fields in the detailed section below.

Before you start

  • Awareness of safe usage:
    • Spread scraping across multiple launches during daytime hours to reduce the risk of hitting GitHub rate limits.
    • Keep your per-launch volume reasonable, extracting too many profiles in a single run may cause timeouts or incomplete results.

Step 1: Connect your Github account

To let the Phantom act on your behalf:

  1. Install the PhantomBuster browser extension and connect your Github session in one click.
  2. If you’re not using Chrome or Firefox, you can retrieve your session cookie manually (see our cookie guide).

Even though this step is marked as optional, it’s strongly recommended to provide connect.
This Phantom needs to be logged in to your GitHub account to access certain profile details, especially email addresses.

PhantomBuster GitHub Profile Scraper step 1 connecting a GitHub account

Step 2: Provide profile URLs

You can give your input in one of three ways:

  • A URL:
    • Paste a single GitHub profile URL or username directly in the setup field.
    • Paste the URL of a Google Sheet with your list of profiles URLs (make sure it’s shared with “Anyone with the link”).
    • Or upload a CSV file with your list of profiles URLs (make sure it’s publicly accessible, and note that CSV upload is only available on paid plans).

→ If you’re using a spreadsheet, the Phantom defaults to the first column (A). To use a different column, enter the column’s header name in the field “Column name containing GitHub profile URLs.”

PhantomBuster GitHub Profile Scraper step 2 providing the GitHub profile URLs

Step 3: Configure extraction settings

  • Number of profiles to process per launch (optional):
    • Default = empty, the Phantom processes all provided profiles in one run.
PhantomBuster GitHub Profile Scraper step 3 configuring the number of profiles to process per launch

Advanced settings (dropdown in setup)

  1. Check if user status is set to hireable (optional):
    • Enable this to return a flag if the GitHub profile owner has set themselves as hireable.
  2. Keep scraping profiles when rate limited by GitHub (optional):
    • Enable to allow the Phantom to retry and continue after hitting GitHub request limits.

Result file settings (dropdown in setup)

  1. Name your results file (optional)
    • You can customize the file name.

      If you rename the file between launches, the Phantom will create a new results file and start processing inputs from scratch.

  2. Fields to keep (optional)

Step 4: Select launch frequency

Choose how often the Phantom should run:

  1. Launch manually: Start the Phantom yourself whenever you need.
  2. Launch once at a specific time: schedule a one-time run at a set date and time.
  3. Launch repeatedly: schedule regular runs (e.g. once per day, several times during working hours).
  4. Launch after another Phantom: chain automations together so this Phantom starts right after another finishes.
  5. Advanced scheduling: customize the exact minutes, hours, days, or months when the Phantom should run.

→ For a complete walkthrough of scheduling options, see our guide to scheduling Phantoms automatically.

PhantomBuster GitHub Profile Scraper step 4 selecting the launch frequency

Step 5 (Optional): Advanced settings

Advanced settings are available if you want to fine-tune how your Phantom runs, but by default they’re already optimized for most use cases.

We recommend leaving them as they are unless a guide specifically instructs you to change something.

→ For a detailed overview of all advanced options (like execution limits, retries, email notifications, proxies, webhooks, and file management), see our Advanced settings guide.

Launch and results

When you’re ready:

  1. Click Launch to start your Phantom.
  2. Once it finishes, open the Results tab in the Phantom console.
  3. Download your results as a CSV or JSON file.

To learn how to export your data to Google Sheets, integrate with other tools, or reuse it in more automations, check our Access and Export your Phantom Results guide.

Export and input limits on the Free plan
If you’re on the Free plan or Free trial, some features are limited:
- CSV exports include only the first 10 rows of results.
- CSV download links (for dynamic viewing in Google Sheets or integrations) are not available.
- JSON exports are not available.
- CSV upload as an input method is not supported.
To unlock all features, you’ll need to upgrade to a paid plan.

What you give (Input) and What you get (Output)

This section gives you a detailed breakdown of everything you need to provide to run this Phantom, and everything you’ll receive once it completes.

What you give (Input)

Type Description
GitHub cookie Your GitHub session cookie

What you get (Output)

Type Description
username Username
fullname Full name
email Email
yearlyCommitsCount Yearly Commits Count
pictureUrl Picture Url
bio Bio
worksFor Works for
organizations Organizations
location Location
website Website
linkedinUrl LinkedIn URL
twitterUrl Twitter URL
youtubeUrl YouTube URL
twitchUrl Twitch URL
createdYear Created Year
pinnedRepos Pinned Repos
popularRepos Popular Repos
repositoriesCount Repositories Count
projectsCount Projects Count
packagesCount Packages Count
starsCount Stars Count
sponsoringCount Sponsoring Count
followersCount Followers Count
followingCount Following Count
query Query
profileUrl Profile URL
timestamp Timestamp
hireable Optional

Tips and troubleshooting

Common pitfalls

  • Using a private spreadsheet (make sure it’s set to “Anyone with the link”).
  • Expecting data that isn’t public: this Phantom only extracts what’s visible on GitHub profiles.

If you run into issues

Suggested automations

Was this article helpful?

0 out of 0 found this helpful