Ship code faster. Communicate better. Stop writing release notes by hand.
If you're reading this, you probably just merged a dozen PRs, your PM is asking "what shipped?", your support team has no idea what changed, and you're staring at a blank Google Doc titled "v2.4.0 Release Notes" with a blinking cursor mocking your existence.
We've been there. That's why we built ReleaseRay.
In this guide, you'll go from zero to published release notes in under 5 minutes. No kidding.
Why Another Tool?
The problem isn't writing. The problem is that you need to write the same information three different ways:
- For engineers: "Refactored authentication middleware to support OAuth2 PKCE flow"
- For your sales team: "We now support enterprise single sign-on"
- For customers: "Log in faster with your company account"
Writing this manually for every release? That's not engineering. That's data entry disguised as content marketing.
ReleaseRay does what you'd do if you had infinite time: It reads your PRs, understands what changed, and generates tailored release notes for every audience. Automatically.
Want the full case for multi-persona notes? Read Why Multi-Persona Release Notes Matter.
Step 1: Connect GitHub (30 seconds)
First things first: ReleaseRay needs to see your PRs.
- Sign up at app.releaseray.com
- Connect your GitHub org (OAuth, no tokens to manage)
- Select repositories you want to track
That's it. ReleaseRay immediately starts listening for merged PRs.
What happens under the hood
When you connect, we install a GitHub App that:
- Subscribes to
pull_requestandissueswebhooks - Requests read access to PRs, issues, and metadata
- Requests write access to Contents and Pull Requests (for optional CHANGELOG.md publisher)
- Never touches your source code. Only reads PR/issue data and optionally updates CHANGELOG.md
Every time a PR merges, we capture:
- PR title, body, and labels
- Linked issues (via "closes #123", "fixes #456")
- Author and reviewer metadata
- Merge timestamp
This data becomes the raw material for your release notes.
Get release management tips in your inbox
Practical guides on release notes, changelogs, and shipping better software. No spam, unsubscribe anytime.
Step 2: Define Your Release Range (1 minute)
Release notes need boundaries. ReleaseRay gives you three ways to define them.
By tags (most common) — pick two semantic version tags and ReleaseRay fetches everything merged between them:
In the dashboard: click "New Release Range" → select the By Tags tab → choose v2.3.0 as the start and v2.4.0 as the end → hit "Create Range".
By dates — pick a start date and end date. Useful for weekly releases or any team that doesn't tag every deploy.
By PR numbers — enter a from/to PR number and ReleaseRay fetches the merged PRs in that range. Useful when you want to hand-pick exactly what goes into a release regardless of when things merged.
Now you have a Release Range: a collection of PRs and issues that define what shipped.
Step 3: Generate Notes for Each Persona (2 minutes)
Click "Generate Drafts". ReleaseRay spins up three parallel LLM calls, each tailored to a different audience. Thirty seconds later you have three drafts. No more blank-page paralysis.
Engineer Persona
Style: Technical, detailed, upgrade-focused
Example Output:
Features
- Added OAuth2 PKCE support (#245)
- Implemented Redis session store with connection pooling (#248)
Bug Fixes
- Fixed race condition in webhook processor (#251)
Breaking Changes
AuthService.login()now returnsPromise<Session>instead ofUserUpgrade Instructions: See migration guide in PR #245.
Who reads this: Your engineering team, open-source contributors, technical integration partners.
Internal/CSM Persona
Style: Customer-impact focused, talking points for Sales/Support
Example Output:
Highlights
Enterprise SSO is Live. Customers can now log in with company credentials (Google Workspace, Okta, Azure AD).
Talking points: Faster onboarding, better security, compliance-friendly. New "Log in with SSO" button in Settings.
Who reads this: CSMs prepping for customer calls, sales reps, support agents.
Customer Persona
Style: Benefit-driven, jargon-free, friendly
Example Output:
What's New
Log in with your company account. Use your work email to sign in. No more remembering another password.
Faster performance. Dashboard loads 40% quicker. Bug fixes. Resolved chart loading on Safari and email notification issues.
Who reads this: End users, release email subscribers, customers who clicked "What's new?"
Step 4: Review, Edit, Publish (1 minute)
ReleaseRay generates drafts, not gospel. You're still the human in the loop.
Quick Edits in the Dashboard
Each draft has a built-in editor:
- Add context: "This fixes the bug reported by Acme Corp"
- Remove noise: That internal refactoring? Maybe don't tell customers.
- Reorder sections: Put breaking changes front and center
One-Click Publishing
When you're happy, hit "Publish" and choose your destinations: GitHub Releases, Hosted Changelog, CHANGELOG.md, Slack, Microsoft Teams, Intercom Help Center, or email subscribers. Each channel can receive a different persona — the engineer draft to GitHub Releases, the customer draft to Slack and your hosted changelog. Configure integrations in Settings → Integrations. Or export as Markdown and paste wherever you need it.
Tips for Maximum Impact
1. Use PR Labels
Add labels like type: feature, type: bug, type: breaking, area: auth. We'll group changes by category.
2. Write Good PR Titles
Bad: "fix stuff" Good: "Fix race condition in webhook processor causing duplicate events"
3. Link Issues
Use "closes #123" in your PR body. We pull context from the issue for better notes.
Common Questions
- "Do I need to write PRs differently?" No. Decent titles and linked issues are enough.
- "What if I don't use Git tags?" Use a date range or select a range by PR numbers instead.
- "Can I edit after publishing?" Yes. Edit and republish.
- "Private PRs?" Add an
internallabel to exclude from customer persona. - "GitLab / Bitbucket?" GitHub only for now. GitLab on our roadmap.
What's Next?
Level up your release workflow:
- Setting up persona-specific outputs: Why Multi-Persona Release Notes Matter
- Automating your branch promotions: Automate Branch Promotions with GitHub Actions
- Enforcing semantic versioning: Free AI Assistant Rules for SemVer
For the latest product features, check our changelog.
Get Started Today
Free for public repos. No credit card required. Five-minute setup. Cancel anytime. Questions? support@releaseray.com or documentation.
Written by Cristobal Mitchell, founder of ReleaseRay.
Enjoyed this post?
Practical guides on release notes, changelogs, and shipping better software. No spam, unsubscribe anytime.
Cristobal Mitchell
Founder of ReleaseRay
Building ReleaseRay — automated release notes from GitHub PRs for developers, PMs, and customers.
Related Posts
Release Notes Best Practices: The Complete Guide for Engineering Teams (2026)
How to write release notes that actually get read. Audience awareness, formatting standards, and automation without the team burnout. The definitive guide for engineering teams.
Why Multi-Persona Release Notes Matter
Learn why engineering teams need different release notes for developers, PMs, and customers, and how to create them without writing three versions manually.
Automate Branch Promotions with GitHub Actions
Free GitHub Actions templates to automate release workflows: auto-create staging and production PRs with semantic version prediction. Stop manual branch promotions and version bumping.
Ready to automate your release notes?