# Bopmigo

> Feedback that explains itself. Bopmigo is how your users tell you what’s wrong, in a way you’ll understand the first time.

Bopmigo is software that helps product teams understand problems their customers run into, so they can fix them faster. It’s sold as a monthly or yearly subscription.

- Works on any website with one script tag, and in iPhone and iPad apps with a Swift package. React Native and Flutter are on the way.
- Flat price per workspace, no per-seat fees. 7-day free trial, no card needed. Plans from $19/month.
- Contact: hello@bopmigo.com

## Questions

### What exactly gets captured?

A screenshot of the visible page, the page address, browser, screen size, language, time zone and your release name if you set one. Private details are hidden automatically before the screenshot leaves the browser: typed-in fields (inputs, text areas, selects), email addresses, card numbers and phone numbers, and anything marked `data-bopmigo-private`. Areas you already marked private for PostHog, rrweb, Sentry, LogRocket, FullStory, Hotjar or Clarity are hidden too. For sensitive apps, turn on Hide all text in screenshots in project settings.

### I’m not technical. Can I still set it up?

Yes. Most website builders have a “custom code” box in their settings. Paste the line there. You can also send the snippet to your developer straight from the dashboard.

### Do the people reporting need an account?

No. They press Feedback, write what happened and send it. They can read your reply in the same window.

### Will it slow my site down?

The script loads with `defer` and does nothing until someone opens feedback.

### Do people have to answer Bopmigo’s questions?

No. Bopmigo only asks when something important is missing, and people can always skip.

### What about mobile apps?

Web works today, including mobile browsers. React Native, Flutter and native SDKs are on the way.

### Where do reports go?

To your Bopmigo inbox, where your team can reply. Each project can also email every report, with its screenshot, to any address you choose. Want them in Slack, Linear or your own system? Tell us what you use at hello@bopmigo.com.

---

# Bopmigo pricing

Try everything free for 7 days, no card needed. Then pay one flat price per workspace, however many people are on your team.

### Pro: $19/month, or $15/month billed yearly

For small teams starting to hear from their users.

- 3 sites or apps
- 500 reports a month
- Up to 3 people
- Screenshots and page details
- Bopmigo follow-up questions
- Question hints per screen
- Open it from your code
- Know who’s reporting

### Team: $49/month, or $39/month billed yearly

For growing teams with more people and products.

- 15 sites or apps
- 2,500 reports a month
- Everything in Pro
- Unlimited teammates
- Priority support

### Business: custom pricing

For larger teams with security needs.

- Unlimited sites and apps
- Custom report volume
- Single sign-on
- Custom data retention
- Dedicated support

## Pricing questions

### What counts as a report?

One piece of feedback someone sends, with its screenshot, details and answers. Your replies and the conversation that follows don’t count.

### What happens if we go over our reports?

Nothing breaks and nothing is lost. We’ll let you know, and new reports keep arriving. If it keeps happening, we’ll suggest the next plan.

### Why no per-seat pricing?

Feedback is useful to everyone on a team: developers, designers, support and clients. Charging per person makes teams leave people out.

### Can I change plans or cancel anytime?

Yes. Upgrades apply immediately. Downgrades and cancellations take effect at the end of your billing period.

### How does the free trial work?

You get everything in Pro for 7 days, with no card needed. If you don’t choose a plan by then, your inbox pauses. Your reports and settings are kept, so you can pick up where you left off.

### Is there a free plan?

No. We’d rather spend our time making Bopmigo great for the teams who rely on it. The trial gives you a full week to see if it’s right for you.

### Do the people sending feedback need a plan?

No. Anyone using your site or app can send feedback without an account.

---

# Bopmigo docs

# What Bopmigo does

> In-app feedback that arrives complete: what people said, what they saw and where it happened, with a short follow-up when something is missing.

People report a problem or an idea from inside your website or app. Bopmigo adds a screenshot with private details covered, the page or screen they were on, and their device. If something important is missing, it asks a short follow-up while they are still there. You get the whole story in one report, and you can reply.

## Who it’s for

- **Teams with a website or web app** who want feedback from customers without a support back-and-forth.
- **App teams running a beta** who want testers to report from the app itself, for example right after taking a screenshot.
- **Small teams that live in email**: reports can arrive in your inbox, and you can choose not to keep them in Bopmigo at all.

## Where it works

- [Websites and web apps](https://bopmigo.com/docs/website): one script tag.
- [iPhone and iPad apps](https://bopmigo.com/docs/ios): a Swift package.
- React Native and Flutter are planned. [Tell us](mailto:hello@bopmigo.com) if you’d like early access.

Page: https://bopmigo.com/docs/what-is-bopmigo

---

# Quick start: website

> Add Bopmigo to a website or web app with one script tag and send your first report.

### 1. Create your workspace

Sign up at [bopmigo.com](https://bopmigo.com/login). Name the workspace after your company or team.

### 2. Connect your website

Choose **Website**, give it a name and add the full address, like `https://acme.com`. Add staging or `localhost` addresses too if you test there. Reports are only accepted from these addresses.

### 3. Paste the script

Copy the snippet from **Install snippet** and paste it before your closing `</body>` tag.

```
<script src="https://bopmigo.com/widget.js"
  data-project="YOUR-PROJECT-ID" defer></script>
```

### 4. Send a test report

Open your site, press **Feedback** in the corner, write a line and send it. It shows up in your Bopmigo inbox within seconds.

### 5. Reply

Open the report and send a reply. The person sees it the next time they open Feedback on your site.

Next: [open Feedback from your own button, say who is reporting, hide private parts](https://bopmigo.com/docs/website-options).

Page: https://bopmigo.com/docs/website

---

# Quick start: iPhone app

> Add the Bopmigo Swift package to an iOS app, so testers can report from inside the app.

### 1. Create your workspace

Sign up at [bopmigo.com](https://bopmigo.com/login).

### 2. Connect your app

Choose **iPhone app** and give it a name. Bopmigo shows your app ID and the package address.

### 3. Add the package

In Xcode, choose **File › Add Package Dependencies…**, paste the package address, and add **Bopmigo** to your app target.

### 4. Configure it once

```
import Bopmigo

@main
struct MyApp: App {
    init() {
        Bopmigo.configure(siteID: "YOUR-APP-ID")
    }
    var body: some Scene { WindowGroup { ContentView() } }
}
```

### 5. Send a test report

Run the app and take a screenshot (in the Simulator: **Device › Trigger Screenshot**). Tap **Report**, write a line and send. It shows up in your inbox within seconds.

> Requires iOS 16 or later. Works with SwiftUI and UIKit apps.

Next: [the screenshot prompt, your own button, hiding private views](https://bopmigo.com/docs/ios-options).

Page: https://bopmigo.com/docs/ios

---

# iPhone app options

> Choose who sees the screenshot prompt, open feedback from your own button, name screens and hide private views.

## Who sees “Report a problem?”

When someone takes a screenshot, Bopmigo can offer to send it as a report. You choose who gets that offer:

```
Bopmigo.configure(siteID: "YOUR-APP-ID", screenshotPrompt: .testersOnly) // default
Bopmigo.configure(siteID: "YOUR-APP-ID", screenshotPrompt: .always)
Bopmigo.configure(siteID: "YOUR-APP-ID", screenshotPrompt: .never)
```

- **`.testersOnly`** (default): only in builds from Xcode and TestFlight. People who download your app from the App Store are never asked.
- **`.always`**: everyone who takes a screenshot is asked.
- **`.never`**: no offer after screenshots. People open feedback from your own button instead.

> On recent iOS versions, a screenshot first opens Apple’s screenshot editor. The Bopmigo offer appears when the person closes it.

## Open feedback from your own button

```
Button("Send feedback") { Bopmigo.show() }
```

## Name your screens

Reports then say which screen they came from, and Bopmigo can ask better questions there.

```
CheckoutView().bopmigoScreen("Checkout")
// or, anywhere:
Bopmigo.setScreen("Checkout")
```

## Hide private views

Password fields are always covered. Cover anything else that is private:

```
Text(user.email).bopmigoPrivate()   // SwiftUI
cardLabel.bopmigoPrivate = true     // UIKit
```

For apps where every word is sensitive, cover all text in screenshots:

```
Bopmigo.setHideAllText(true)
```

You can also turn on **Hide all text in screenshots** in your app’s settings in Bopmigo.

## Say who is reporting

Nothing about the person is sent unless you add it. If you include an email address, you can reply to them straight from the report email.

```
Bopmigo.setUser(id: user.id, email: user.email, name: user.name)
```

## Add your own details

```
Bopmigo.setContext("plan", "pro")
Bopmigo.setContext("plan", nil)   // remove
```

Don’t add passwords, tokens or private messages.

## When the connection drops

If a report can’t be sent, it is kept on the device and sent automatically when the connection is back. Sending a report never depends on your app’s own sign-in or servers.

Page: https://bopmigo.com/docs/ios-options

---

# Website options

> Open Bopmigo from your own button, say who is reporting, add details and hide private parts of the page.

## Open it from your own button

Hide the corner button with `data-button="hidden"`, then open Feedback from your code:

```
<script src="https://bopmigo.com/widget.js"
  data-project="YOUR-PROJECT-ID" data-button="hidden" defer></script>

Bopmigo.open()
Bopmigo.open({ type: 'problem', screen: 'Checkout' })
Bopmigo.close()
Bopmigo.showButton()
Bopmigo.hideButton()
```

`type` is `problem`, `change` or `idea`. Listen for `bopmigo:ready` if you call it before the script has loaded.

## Say who is reporting

Nothing about the person is sent unless you add it. With an email address, you can reply to them straight from the report email.

```
Bopmigo.identify({ id: 'u_42', email: 'ada@example.com', name: 'Ada' })
```

## Add your own details

```
Bopmigo.setContext({ plan: 'pro', cart_total: 612 })
```

Up to 20 short values, shown in the report’s details. Don’t add passwords, tokens or private messages.

## React to what happens

```
Bopmigo.on('sent', report => { /* report.id */ })
Bopmigo.on('open', () => {})
Bopmigo.on('close', () => {})
```

## Hide private parts of the page

Typed-in fields, email addresses, card numbers and phone numbers are covered automatically. Mark anything else:

```
<div data-bopmigo-private>…</div>
```

Areas you already hide from session recording tools (for example with `ph-no-capture`) are covered too. For sensitive products, turn on **Hide all text in screenshots** in project settings.

> Embedded content from other sites, like a video or payment frame, can’t be included in screenshots. The report is still sent.

Page: https://bopmigo.com/docs/website-options

---

# What a report contains

> The summary, the person’s own words, Bopmigo’s question and their answer, the details and the screenshot.

- **Summary by Bopmigo**: one line, plus what they expected, what happened and the steps they took, when they said so. It only uses their words.
- **Original comments**: exactly what they wrote, Bopmigo’s question (at most one) and their answer. They can always skip the question.
- **Details**: the page or screen, app version, browser or device, language and time zone, plus anything you added.
- **Screenshot**: what they were looking at, with private details covered.
- **Related reports**: earlier reports about the same thing, so you can see how many people hit it.

## Types

- **Bug**: something isn’t working as expected.
- **Feature request**: a change or something missing.
- **Idea**: a suggestion for something new.

## Better questions

In your project settings, add a sentence about your product under **What should Bopmigo know?**, and hints for specific screens. Bopmigo uses them when a report is missing something.

Page: https://bopmigo.com/docs/reports

---

# Reports by email

> Get each report in your email, reply to people from there, or keep reports only in your email.

In your project settings, add the email address that should receive reports and confirm it. Each new report arrives with the summary, the conversation, the details and the full screenshot attached.

## Replying by email

If your site or app shared the person’s email address, replying to the report email goes straight to them.

## Don’t keep reports in Bopmigo

Turn on **Don’t keep reports in Bopmigo** and each report is erased from Bopmigo as soon as it has been emailed to you. Your email holds the only copy. This needs a confirmed email address.

Page: https://bopmigo.com/docs/email

---

# Replying to people

> Answer from your inbox, and people read it where they sent the report.

Open a report and write your reply. On websites, the person sees it the next time they open Feedback in the same browser. If you have their email address, you can also reply by email.

Mark reports as **In progress** or **Resolved** to keep track. Deleted reports stay in **Recently deleted** for 30 days.

Page: https://bopmigo.com/docs/replies

---

# Privacy and your data

> What Bopmigo captures, what is covered, and how you control storage and deletion.

- Screenshots are covered on the device before they are sent: passwords, typed-in fields and anything you mark private.
- Nothing about the person is included unless your site or app adds it.
- You can choose to keep reports only in your email.
- Deleting a report, project or account removes it. Deleted items can be restored for 30 days, then they are gone.

Read the full [privacy policy](https://bopmigo.com/privacy).

Page: https://bopmigo.com/docs/privacy

---

# Questions

> Answers to common questions about installing and using Bopmigo.

### Will people who download my app from the App Store be interrupted?

Not by default. The “Report a problem?” offer after a screenshot only appears in builds from Xcode and TestFlight. You can change that, or turn it off and use your own button.

### How does Bopmigo know who is a tester?

Builds you run from Xcode and builds installed from TestFlight count as testers. Anyone who installed your app from the App Store does not.

### What is captured by default?

What the person wrote, their answer to the one follow-up question if they gave one, a screenshot with private details covered, the page or screen, the app version, the device or browser, language and time zone. Nothing about who they are unless you add it.

### Can I see the package code?

Yes. The packages you add to your app are open source, so you can read exactly what is captured and sent.

### What happens if someone is offline?

In iPhone apps the report is kept on the device and sent when the connection is back. On websites, the draft stays in the Feedback window until it can be sent.

### Does the follow-up question slow people down?

It’s a short follow-up, only when something important is missing, and it can always be skipped. If the report is already complete, it sends straight away.

### Can I get reports only by email?

Yes. Confirm your email in project settings and turn on **Don’t keep reports in Bopmigo**.

### Which platforms are supported?

Websites and web apps, and iPhone and iPad apps (iOS 16 or later). React Native and Flutter are planned.

### Do the people sending feedback need an account?

No. Anyone using your site or app can send feedback.

Page: https://bopmigo.com/docs/faq

---

# For coding agents

> Give your coding agent everything it needs to add Bopmigo to your app.

Coding agents can read these docs as plain text:

- [bopmigo.com/llms.txt](https://bopmigo.com/llms.txt): an index of every page.
- [bopmigo.com/llms-full.txt](https://bopmigo.com/llms-full.txt): all of the docs in one file.

## A prompt you can paste

```
Add Bopmigo in-app feedback to this app.
Read https://bopmigo.com/llms-full.txt first.
My project ID is YOUR-PROJECT-ID.
- Install it the way the docs describe for this platform.
- Add a "Send feedback" button in Settings that opens it.
- Mark private fields (email, address, payment) as private.
- If we know who is signed in, pass their id, email and name.
Don't change anything else.
```

Page: https://bopmigo.com/docs/agents
