Skip to main content

Overview

The GitHub integration provides comprehensive development metrics including commits, pull requests, issues, repository activity, and contributor insights.
What you’ll track:
  • Commits per day/week/month
  • Pull requests (open, merged, closed)
  • Issues (open, closed, response time)
  • Repository stars and forks
  • Contributor activity
  • Code review metrics

Prerequisites

Before connecting GitHub, ensure you have:
  • A GitHub account with repository access
  • Admin or owner permissions for repositories you want to track
  • A Dashtray account (any tier)

Connection Steps

1

Navigate to Integrations

  1. Log in to your Dashtray account
  2. Click Integrations in the sidebar
  3. Find GitHub in the Engineering category
  4. Click Connect
2

Authorize GitHub

You’ll be redirected to GitHub’s OAuth authorization page.
  1. Review the requested permissions (read-only repository access)
  2. Select which repositories to grant access to
  3. Click Authorize
Dashtray only requests read-only access to repository data. We never have permission to modify your code or settings.
3

Select Repositories

After authorization:
  1. Choose which repositories to track
  2. Select all or specific repositories
  3. Click Save
You can modify this selection later in integration settings.
4

Initial Data Sync

Dashtray will fetch:
  • Last 30 days of commits
  • Open pull requests
  • Open and recently closed issues
  • Repository metadata
This usually takes 1-2 minutes depending on repository size.

Available Metrics

Commit Metrics

MetricDescriptionUnit
github_commitsTotal commitscount
github_commits_todayCommits in last 24 hourscount
github_commits_weekCommits in last 7 dayscount

Pull Request Metrics

MetricDescriptionUnit
github_prs_openOpen pull requestscount
github_prs_mergedMerged pull requestscount
github_prs_closedClosed pull requestscount
github_pr_merge_timeAverage time to mergehours

Issue Metrics

MetricDescriptionUnit
github_issues_openOpen issuescount
github_issues_closedClosed issuescount
github_issue_response_timeAverage first response timehours

Repository Metrics

MetricDescriptionUnit
github_starsRepository starscount
github_forksRepository forkscount
github_contributorsActive contributorscount
For real-time updates, configure GitHub webhooks:
1

Get Webhook URL

  1. Go to IntegrationsGitHubSettings
  2. Copy your unique webhook URL
https://api.dashtray.com/webhooks/github/{your-project-id}
2

Add Webhook in GitHub

  1. Go to your repository SettingsWebhooks
  2. Click Add webhook
  3. Paste your Dashtray webhook URL
  4. Set Content type to application/json
  5. Select individual events:
    • Push events
    • Pull request events
    • Issue events
    • Release events
  6. Click Add webhook
3

Verify Webhook

GitHub will send a test ping event.Check Recent Deliveries in GitHub to verify success (200 response).

Troubleshooting

Connection Failed

Problem: OAuth authorization fails. Solutions:
  • Ensure you have admin access to repositories
  • Check that you’re logged into the correct GitHub account
  • Try disconnecting and reconnecting
  • Verify GitHub is not experiencing outages

No Commits Showing

Problem: Commit metrics are zero or outdated. Solutions:
  • Verify you selected the correct repositories
  • Check that repositories have recent commits
  • Click Refresh to trigger manual sync
  • Ensure repository is not private (if using GitHub Free)

Webhook Not Working

Problem: Real-time updates aren’t appearing. Solutions:
  • Verify webhook URL is correct
  • Check webhook secret matches (if configured)
  • Review GitHub webhook delivery logs
  • Ensure webhook is active (not disabled)
  • Check that selected events include push/PR/issue events

Rate Limiting

Problem: Sync fails with rate limit error. Explanation:
  • GitHub API has rate limits (5,000 requests/hour for authenticated apps)
  • Large repositories may hit limits during initial sync
Solutions:
  • Wait for rate limit to reset (shown in error message)
  • Reduce number of tracked repositories
  • Use webhooks to minimize API calls

Data Refresh

Manual Refresh

Click Refresh on your dashboard to fetch the latest data from GitHub.
Manual refresh fetches the last 7 days of activity to capture recent changes.

Webhook Updates

With webhooks configured, updates appear in real-time:
  • New commits: Instant
  • Pull request changes: Instant
  • Issue updates: Instant

Best Practices

1. Use Webhooks

Configure webhooks for real-time updates:
  • Reduces API calls and rate limit issues
  • Provides instant notification of changes
  • More accurate real-time metrics

2. Track Key Repositories

Focus on your most important repositories:
  • Main product repositories
  • Active development branches
  • Customer-facing projects

3. Monitor PR Merge Time

Track average merge time to:
  • Identify bottlenecks in code review
  • Improve development velocity
  • Optimize team workflows

4. Set Up Alerts

Create alerts for:
  • Spike in open issues
  • Long PR merge times
  • Decreased commit activity
  • Critical issue creation

Security & Privacy

Data Access

Dashtray requests read-only access to:
  • Repository metadata
  • Commit history
  • Pull request data
  • Issue data
  • Contributor information
We never access:
  • Source code content
  • Secrets or environment variables
  • Private repository data (unless explicitly granted)
  • Personal access tokens

Credential Storage

  • OAuth tokens are encrypted with AES-256-GCM
  • Tokens are stored securely in our database
  • You can revoke access anytime from GitHub settings

Data Retention

Data retention depends on your tier:
  • Starter: 3 days
  • Basic: 30 days
  • Pro/Scale: Unlimited

Disconnecting

To disconnect GitHub:
  1. Go to IntegrationsGitHub
  2. Click Disconnect
  3. Confirm disconnection
Disconnecting will stop data syncing. Historical data will be retained according to your tier’s retention policy.
You can also revoke access from GitHub:
  1. Go to GitHub Settings
  2. Find Dashtray under Authorized OAuth Apps
  3. Click Revoke

Next Steps

Create Engineering Dashboard

Build a development-focused dashboard

Set Up Alerts

Get notified of development changes

Connect Vercel

Track deployments alongside commits

Connect Sentry

Monitor errors with development activity

Support

Need help with GitHub integration?