GitHub Activity Generator

A script that helps you instantly generate a beautiful GitHub Contributions Graph for the last year.





How to use

  1. Create an empty GitHub repository. Do not initialize it.
  2. Download the script and execute it passing the link on the created repository
python --repository=

Now you have a repository with lots of changes in your GitHub account. Note: it takes several minutes for GitHub to reindex your activity.

How it works

The script initializes an empty git repository, creates a text file and starts generating changes to the file for every day within the last year (0-20 commits per day). Once the commits are generated it links the created repository with the remote repository and pushes the changes.

Making contributions private

Note: This script doesn't encourage you to cheat. Cheating is bad. But if anybody is judging your professional skills by the graph at your GitHub profile (which caries no value) they deserve to see a rich graph.

For that matter, you might want to make the generated repository private. It is free on GitHub. Now, you only need to set up your account to show private contributions. This way GitHub users will see that you contributed something, but they won't be able to see what exactly.


You can customize how often to commit and how many commits a day to make, etc.

For instance, with the following command, the script will make from 1 to 12 commits a day. It will commit 60% days a year.python --max_commits=12 --frequency=60 [email protected]:user/repo.git

Use --no_weekends option if you don't want to commit on weekendspython --no_weekends

If you do not set the --repository argument the script won't push the changes. This way you can import the generated repository yourself.

Run python --help to get help.

System requirements

To be able to execute the script you need to have Python and Git installed.


I performed the script but my GitHub activity is still the same.

It might take several minutes for GitHub to reindex your activity. Check if the repository has new commits and wait a couple of minutes.

The changes are still not reflected after some time.

Are you using a private repository? If so, enable showing private contributions following this guide.

Still no luck

Make sure the email address you have in GitHub is the same as you have in your local settings. GitHub counts contributions only when they are made using the corresponding email.

Check your local email settings with:

git config --get

If it doesn't match with the one from GitHub reset it with

git config --global "[email protected]"

Create a new repository and rerun the script.

There are errors in the logs of the script.

Maybe you tried to use an existing repository. If so, make sure you are using a new one which is not initialized.

If none of the options helped, open an issue and I will fix it as soon as possible.

GitHub - dev1ninja/github-activity-generator at
Don’t use this for other purpose. Contribute to dev1ninja/github-activity-generator development by creating an account on GitHub.