README Generator

How to Add GitHub Streak Stats to Your Profile README

The GitHub streak stats card shows three metrics in a compact card: your current contribution streak, your longest streak ever, and your total contributions across all time. It is one of the most effective signals of consistency on a developer profile — a 90-day streak communicates disciplined daily practice better than any self-description could. This guide covers the DenverCoder1/github-readme-streak-stats service, which renders a styled card with no setup required — just a single URL with your username.

Quick Setup Steps

  1. 1

    Step 1: Open your GitHub profile repository and edit README.md.

  2. 2

    Step 2: Add the streak card image tag: [![GitHub Streak](https://streak-stats.demolab.com?user=YOUR_USERNAME&theme=tokyonight)](https://git.io/streak-stats)

  3. 3

    Step 3: Replace YOUR_USERNAME with your GitHub username.

  4. 4

    Step 4: Optionally add theme and customization parameters (hide_border, mode, etc.).

  5. 5

    Step 5: Commit and push. Visit your GitHub profile to verify the streak card renders correctly.

What Is the GitHub Streak Stats Card?

The streak stats card is an SVG image generated by the streak-stats.demolab.com service. It reads your public GitHub contribution history and displays three sections: the left shows your current active streak in days, the center shows your longest streak ever recorded, and the right shows your total contribution count across all years.

The card uses the same contribution data as GitHub's native contribution graph, meaning it counts commits to default branches, pull requests opened, issues created, and code reviews. It does not count contributions to non-default branches unless those branches are later merged. Like the native graph, it resets at midnight in your configured time zone.

How to Add the Streak Stats Card

Adding the streak card requires a single line of markdown. Replace YOUR_USERNAME with your GitHub username:

[![GitHub Streak](https://streak-stats.demolab.com?user=YOUR_USERNAME&theme=tokyonight)](https://git.io/streak-stats)

The card is commonly placed side by side with the github-readme-stats card using an HTML div:

<div align="center">
  <img src="https://streak-stats.demolab.com?user=YOUR_USERNAME&theme=tokyonight" height="150" />
  <img src="https://github-readme-stats.vercel.app/api?username=YOUR_USERNAME&theme=tokyonight" height="150" />
</div>

The height="150" attribute ensures both cards align to the same height for a clean two-column layout.

Customizing the Streak Stats Card

The streak card has its own theming system separate from github-readme-stats. Common themes that match popular README color schemes:

  • tokyonight — dark navy with cyan/purple accents (most popular)
  • dark — plain dark background with white text
  • highcontrast — high visibility black and white
  • radical — pink and purple gradient on dark background
  • dracula — purple-highlighted dark theme
  • transparent — no background, blends with GitHub page background

Additional parameters:

  • hide_border=true — removes the card border
  • date_format=j/n[Y] — changes the date format
  • mode=weekly — shows weekly streak instead of daily
  • exclude_days=Sun,Sat — excludes specific days from streak calculation (useful if you don't code on weekends)

Troubleshooting Streak Stats

If the card shows 0 streak even when you have recent contributions, the service may be experiencing a rate limit or cache delay. Wait a few minutes and reload. GitHub contribution data has a propagation delay — commits made in the last few hours may not appear yet.

If the card throws an error about the user not being found, verify your username is spelled correctly (case matters). The streak-stats service uses the GitHub API and respects GitHub's rate limits — if you see a 'Failed to generate' message, it usually resolves within a few minutes without intervention.

For developers with consistent private repo activity, note that private contributions are not counted unless you have enabled 'Include private contributions on my profile' in your GitHub profile settings.

Frequently Asked Questions

How do I add GitHub streak stats to my README?

Add this to your README: `[![GitHub Streak](https://streak-stats.demolab.com?user=YOUR_USERNAME&theme=tokyonight)](https://git.io/streak-stats)` replacing YOUR_USERNAME with your GitHub handle. For a two-column layout, use the HTML div pattern with two img tags set to height="150" each.

Is the GitHub streak stats card free?

Yes. The DenverCoder1/github-readme-streak-stats project is open source and the hosted service at demolab.com is free. No API key or account is required. You can also self-host the service by forking the repository and deploying to Vercel for guaranteed uptime.

Why is my GitHub streak showing as 0 or broken?

Common causes: (1) the service is temporarily rate-limited — wait a few minutes, (2) your username is misspelled in the URL, (3) you have no public contributions in the last 24 hours. GitHub's contribution counting has a processing delay of up to 2-3 hours for recent activity.

Does GitHub streak stats count private repository contributions?

Only if you have enabled 'Include private contributions on my profile' in your GitHub profile settings. By default, private repository commits are excluded from the public contribution graph and therefore from the streak count.

From Our Blog

Generate Your GitHub Profile README

Generate a GitHub profile README featuring GitHub Streak Stats with AI

Try It Free — No Sign Up