Bug Reporting & User Feedback

In-app bug reporting for iOS & Android

Your testers and users shake the device, mark up a screenshot and hit send. You get a report with a screen recording of what led to the bug, console and network logs and every device detail, so you spend your time fixing, not reproducing.

Included in every plan, including FREE · iOS, tvOS & Android · Hosted in Switzerland

“It doesn’t work” is not a bug report

Most of the time spent on a bug goes into understanding it. Missing context turns a five-minute fix into days of back and forth.

No steps to reproduce

Testers rarely remember every tap that led to a bug. Without the exact steps, developers guess, and rare issues are closed as “cannot reproduce”.

Missing device context

Which device, OS version, app build, language or backend environment? Every follow-up question delays the fix by another round trip.

Invisible server issues

When a backend call fails, the screen only shows the symptom. Without the network requests and responses, the root cause stays hidden.

From shake to fix in three steps

A reporting flow your testers will actually use, and reports your developers will love.

  1. 1

    Shake or take a screenshot

    On iPhone, iPad and Android, a shake or a screenshot opens the reporter. You can also trigger reports from your own UI on iOS and tvOS.

  2. 2

    Mark up and describe

    Testers draw on the screenshot to highlight the problem, add a short description and optionally leave their email for follow-up.

  3. 3

    Fix with full context

    The report arrives in your Dashboard with the screen recording, logs and device details, ready for your team to act on.

Everything you need, in every report

Each report captures what happened before the bug, not just the moment it was reported.

Marked-up screenshots

Capture the screen and draw right on it, so nobody has to guess which button or label is wrong.

Screen recording

Replay the last few minutes before the report, optionally with touch indicators, and see the exact steps that led to the bug.

Console logs

Your app’s logs from the moments leading up to the report, with a configurable retention window.

Network logs

Requests, responses and status codes leading up to the report, so server-side causes are visible at a glance.

Device & app details

App version, OS, device, locale, screen and environment are attached automatically, with no extra code.

Custom attachments

On iOS and tvOS, attach up to three of your own files, such as a database snapshot, to every report.

Captured automatically

  • App version & build
  • Backend environment
  • Device model
  • OS version & beta builds
  • Locale
  • Current screen
  • Screen size & density
  • Time since app launch
  • User identifier

Up and running in minutes

Add the AppeliumFeedback SDK, start it with your API key and enable bug reporting. Everything else is optional.

Swift · iOS & tvOS
AppeliumFeedback.start(
    apiKey: "YOUR_API_KEY",
    bugReporting: .enabled()
)
Kotlin · Android
AppeliumFeedback.start(
    apiKey = "YOUR_API_KEY",
    application = this,
    bugReporting = BugReportingConfiguration.Enabled()
)

Integration guides for iOS, tvOS and Android.

Built for beta testing and production

Private by default

Every SDK feature is off until you enable it. No IP address processing, and your data is hosted and processed in Zürich, Switzerland.

Your UI or ours

Use the built-in reporter, or on iOS and tvOS send reports silently from your own feedback form or at a chosen moment.

Team notifications

Let your team know about new bug reports in Slack, Microsoft Teams or Opsgenie.

Beta distribution built in

Distribute builds to your testers with Appelium and collect their feedback in the same place.

Performance first

Compact payloads and efficient capture keep the SDK out of your users’ way.

One platform

Bug reports live next to your crashes, non-fatal errors, network monitoring and UI test recordings.

Frequently asked questions

What is in-app bug reporting?

In-app bug reporting lets testers and users report a problem without leaving your app. Instead of a vague email, you receive a report with a screenshot, a screen recording, console and network logs and the device details needed to reproduce the issue.

How do testers and users report a bug?

On iPhone, iPad and Android, they shake the device or take a screenshot, mark up the screenshot and describe the problem. On iOS and tvOS you can also send reports from your own UI or at a chosen moment, without showing the Appelium reporter.

Can I see what happened before the bug was reported?

Yes. With screen recording enabled, the report includes a recording of the last few minutes before it was sent, optionally with touch indicators, together with the console and network logs leading up to the report.

Can I attach my own files to a bug report?

Yes. On iOS and tvOS you can attach up to three files to each report, for example a database snapshot or a configuration dump, so you have the exact app state at hand.

What about privacy?

Every Appelium SDK feature is off by default, including screenshots and screen recording, so nothing is collected unless you enable it. Appelium does not process IP addresses, and your data is hosted and processed in Zürich, Switzerland, and never shared with third parties.

Which plans include bug reporting?

Bug reporting and user feedback are included in every plan, including the FREE plan for indie developers, for iOS, tvOS and Android apps.

Stop chasing reproduction steps

Give your testers a one-shake way to report bugs, and give your developers the context to fix them.

You are in a good company - Join over 150 apps!

Over 150 apps in Switzerland choose to use Appelium.

homegate
twint
timeplaces

👨‍💻 Latest content from our Engineering blog:

XPCService

  • Strongly typed bidirectional communication channel between UIApplication and XCUIApplication with powerful APIs and super fast performance.


    More about XPCService

Screen Flow Pattern in UI tests

  • Robust and scaleable pattern for structuring UI tests. Highly reusable screen verification code with human readable test case code. All flows and interactions statically typed 🙌.


    More about the Screen Flow Pattern

SnapshotQuery™

  • Learn about SnapshotQuery - our latest addition to AppeliumTests which radically improves the performance of your XCUITests while making them more stable and reliable at the same time.


    More about SnapshotQuery

Early access and news

Be the fist one to know about all the exciting engineering posts and product announcements.