PR Preview

Review Every PR on Real Devices

Create a dedicated Capgo channel for each pull request. Share a link with your team and they can test the exact changes on their device - no app reinstalls, no TestFlight, no waiting.

No TestFlight required
Instant on-device testing
Auto-cleanup on merge

The Problem

TestFlight and Google Beta Are Blocking Your Velocity

The TestFlight Testing Workflow

1

Developer Opens PR

Code is ready for review. But before anyone can test it, you need to build and upload to TestFlight.

2

Build and Upload

Build the app locally or in CI. Archive it. Upload to App Store Connect. Wait for processing. 15-30 minutes minimum.

3

Distribute to Testers

Add testers if they're not already in TestFlight. Send invites. Wait for them to accept. Explain how to install.

4

Test the Wrong Build

Testers download the build. Dev pushes a fix. Now everyone needs to repeat steps 2-3 to get the updated build.

Total time to test a PR: 45-60 minutes. Per PR. Per tester. For every update.

The Hidden Cost of Slow Testing

15-30 minutes

TestFlight processing time

Every build you upload has to be processed by Apple before testers can access it. This is per-build, every time.

67%

Of QA time spent waiting

QA engineers report spending 67% of their time waiting for builds rather than actually testing. That's 5+ hours per day of wasted productivity.

$340/PR

Hidden cost per pull request

When you factor in developer wait time, QA blocked time, and delayed feedback, each PR costs an average of $340 in lost productivity.

The Solution

Test Any PR in Under 60 Seconds

Create a Capgo channel for each PR. Testers switch channels in seconds. No app reinstalls. No waiting.

1

Developer Opens PR

CI automatically builds the app and creates a Capgo channel named after the PR number.

Automatic

2

Bundle Uploads

The built bundle uploads to Capgo in the background. No processing delay.

< 30 seconds

3

Tester Switches Channel

Tester opens the app, switches to the PR channel, and gets the build immediately.

< 10 seconds

4

Test and Approve

QA tests on real device. Dev pushes fixes. Tester immediately gets updates. No reinstall needed.

Instant iteration

.github/workflows/pr-preview.yml
name: PR Preview
on:
  pull_request:
    types: [opened, synchronize]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Setup & Build
        run: |
          npm ci
          npm run build

      # Create a channel named after your PR
      - name: Create PR Channel
        run: npx @capgo/cli channel add pr-$${{ github.event.pull_request.number }}

      # Upload the build to that channel
      - name: Upload to Capgo
        run: npx @capgo/cli bundle upload --channel pr-$${{ github.event.pull_request.number }}

      # Post a comment with the test link
      - name: Comment on PR
        uses: actions/github-script@v7
        with:
          script: |
            github.rest.issues.createComment({
              owner: context.repo.owner,
              repo: context.repo.repo,
              issue_number: $${{ github.event.pull_request.number }},
              body: 'πŸ“± **Test this PR on device:**\\n\\nOpen your app and switch to channel: `pr-$${{ github.event.pull_request.number }}`'
            })

Setup takes 5 minutes. Copy this workflow and adapt it to your CI.

How Testers Switch to Your PR Build

Shake Menu (Zero Code)

Enable the built-in shake gesture. Testers shake their device to open a menu showing all available channels.

// capacitor.config.ts
CapacitorUpdater: {
  shakeMenu: true // Enable for testing
}

In-App Switcher

Build a custom UI for switching channels. Perfect for a dev settings screen in your app.

// Switch channel from your app
import { CapacitorUpdater } from '@capgo/capacitor-updater'

await CapacitorUpdater.setChannel({
  channel: 'pr-123'
})

Real-World Impact

How TechFlow Accelerated Their Review Cycle by 4x

TechFlow

B2B SaaS - Team Collaboration App

TechFlow's mobile team was shipping 15-20 PRs per week. Each PR needed testing by QA before merge. With TestFlight, their QA lead estimated they spent 60% of their time waiting for builds instead of testing.

The real pain came during crunch weeks. When multiple PRs needed testing simultaneously, QA had to constantly reinstall different TestFlight builds. Testers got confused about which version they were running. Bugs got reported on already-fixed code.

After implementing Capgo PR Preview, their QA team could switch between any PR in seconds. No reinstalls. No confusion. No waiting. Their average time-to-merge dropped from 2.3 days to 0.6 days.

The Results (First Quarter)

Time to first QA feedback < 5 min
PRs merged per sprint +156%
QA wait time -87%
Time to merge 0.6 days

"Our QA team went from constantly frustrated to genuinely happy. They actually enjoy testing now because they're not waiting around. We ship twice as many features per sprint."

β€” Lisa Wong, Engineering Manager at TechFlow

Built for Every Role on Your Team

PR Preview transforms how your entire team collaborates on mobile development.

QA Engineers

  • Test any PR on your device in seconds
  • Switch between PRs instantly to compare behavior
  • No more confusion about which build you're running

Project Managers

  • Review features before they ship
  • No technical setup - just tap a link
  • Provide feedback directly on the PR

Developers

  • Get QA feedback before your context switches
  • Push fixes and testers get them instantly
  • No more 'waiting for build' blockers

TestFlight vs Capgo PR Preview

TestFlight / Beta

Capgo PR Preview

Build to testable
15-30 min
<1 min
Switch between builds
5+ min reinstall
10 seconds
Tester setup
Apple ID + invitation
Just open the app
Cleanup old builds
Manual
Automatic on merge

Stop Waiting. Start Testing.

Your QA team deserves better than watching progress bars. Give them instant access to every PR.

Set up in 5 minutes. No TestFlight required. No app reinstalls.