
A useful bug report gives someone enough information to investigate a problem without reconstructing the conversation that led to it.
Include the affected feature, steps to reproduce, expected result, actual result, environment, and evidence. Add the observed impact and anything you have not yet confirmed.
The template below works for website projects, client portals, and small software teams. Use the short version to capture a report quickly, then expand it when the investigation needs more detail.
Report ID: [Optional reference, such as BUG-014]
Reported by: [Name or team]
Date and time observed: [Include timezone when relevant]
Website, app, or project: [Name]
Affected page or feature: [Page, screen, or feature]
Environment: [Production / Staging / Local]
App version or build: [Version, release, or Unknown]
[One or two sentences describing the observed problem.]
Starting conditions: [Required account role, settings, existing data, or previous action]
[What should happen, based on the agreed requirement or normal behavior?]
[What happened instead? Include exact error text if there is any.]
Reproduction frequency: [For example, 3 out of 3 attempts, Intermittent, or Not yet reproduced]
Observed affected users or accounts: [What you have actually confirmed]
Other environments checked: [Device, browser, account, or Not checked]
Device: [Model or device type]
Operating system: [Name and version]
Browser or app: [Name and version]
Screen size or orientation: [If relevant]
Account role: [If relevant]
Network conditions: [If relevant or Unknown]
Screenshot: [File name or reference]
Recording: [File name and relevant timestamp]
Error message: [Exact text or None shown]
Relevant logs: [Sanitized excerpt or reference, if available]
User impact: [What the person cannot do, or what goes wrong]
Workaround: [Confirmed workaround or None confirmed]
Severity: [Proposed impact level and reason]
Priority: [Decision about when to address it, or Awaiting triage]
Owner: [Person responsible for the next action]
Known facts: [Confirmed observations]
Open questions: [What still needs checking]
Next action: [Specific investigation step]
Resolution: [Complete after investigation or implementation]
Retest result: [Complete after testing]
Status: [Reported / Investigating / Ready for retest / Closed / Reopened]
You do not need to fill every field before reporting an issue. Use “Unknown” or “Not checked” where appropriate.
Missing information is easier to handle when it is visible.
Use this when you need to record the issue before returning to your work.
Title: [Problem + trigger]
Where: [Page or feature]
Steps: [The shortest sequence you know]
Expected: [What should happen]
Actual: [What happened]
Environment: [Device, browser, and app version if known]
Evidence: [Screenshot or recording]
Impact: [What this prevents or disrupts]
Still unknown: [What needs confirmation]
A short, accurate report is useful. A long report filled with guesses is harder to investigate.
This is a fictional example for a client website. It illustrates the reporting format rather than describing a bug in SelfManager.
Report ID: BUG-014
Reported by: Project reviewer
Affected feature: Portfolio category filter
Environment: Staging
App version or build: Not yet recorded
Changing the portfolio filter from Web to Branding updates the selected label, but the visible project cards continue to show the Web results.
Starting conditions: Open the staging portfolio page in a desktop browser.
The selected filter shows Branding, and the project cards match the Branding category.
The filter shows Branding, but the cards continue to show the Web selection.
No error message appears.
Reproduction frequency: 3 out of 3 attempts in the reported environment.
Observed scope: One desktop browser session.
Other environments checked: None.
Browser: Chrome; exact version not yet supplied.
Operating system: macOS; exact version not yet supplied.
Account role: Public visitor.
Screenshot: portfolio-branding-selected-web-results.png
Recording: portfolio-filter-category-change.mp4
Relevant moment: Around 00:12, after selecting Branding.
User impact: A visitor may see the wrong project examples for the selected category.
Workaround: None confirmed.
Severity: Moderate under this project’s proposed scale because a browsing feature gives incorrect results.
Priority: Awaiting project-lead review.
Owner: Developer.
Reproduce the category change, record the affected build, and check whether the displayed results match the selected category.
The report distinguishes what was observed from what remains unknown. It does not claim the issue affects every browser or identify a cause before investigation.
Start from a state another person can reach.
“Change the filter” leaves several questions unanswered. Which page? Which original selection? Which new selection?
“On the portfolio page, select Web, wait for the cards to update, then select Branding” gives the investigator a sequence to follow.
Use one action per numbered step where possible. Include starting conditions that could change the result, such as:
If you cannot reproduce the issue, report that honestly. Record what happened before it appeared and what you tried afterward.
Do not turn “it happened once” into “it always happens.”
These two fields are the center of the report.
Expected result describes the agreed behavior.
Actual result describes the observation.
For example:
Expected: Selecting Branding displays Branding projects.
Actual: The selected label changes, but the previous Web projects remain visible.
Avoid “the filter is broken” as the entire actual result. It communicates frustration without identifying the mismatch.
If the expected behavior is unclear, flag the requirement for clarification. Some reports reveal an undefined decision rather than an implementation defect.
Choose evidence that helps someone understand the problem.
| Evidence | Useful for | Include |
|---|---|---|
| Screenshot | Incorrect text, layout, selected state, or visible error | Enough surrounding context to identify the screen |
| Screen recording | A sequence, transition, intermittent behavior, or timing issue | Starting action, trigger, and result |
| Written steps | Repeating the investigation and retesting | A clear sequence and starting conditions |
| Error or log excerpt | Investigating a specific failure | Relevant message and timestamp, with sensitive data removed |
A screenshot captures a state. A recording shows how you reached it.
Neither replaces written steps. A developer or reviewer should be able to understand the report without watching a long recording from the beginning.
For video evidence, add a brief description and timestamp:
“00:12: Branding becomes selected, but the Web cards remain.”
Keep unrelated windows, passwords, customer details, and private messages out of the evidence you share.
Severity describes the impact. Priority describes when the work should be addressed.
A small project can use a simple severity scale:
These are suggested definitions. Agree on the scale for your project.
Then decide priority using context: affected users, deadlines, dependencies, available workarounds, and competing problems.
The person reporting the issue can describe the impact. The person coordinating the work can decide its place in the schedule.
Avoid marking every report urgent. Explain the consequence that justifies its position.
SelfManager organizes work in dated tables with tasks, notes, and comments. For a small project, a practical setup is a table named “BUG-014: portfolio filter” on the date the issue was reported.
Use the template as a manual reporting structure:
The template’s severity, priority, and triage status fields are written labels. They do not imply that every field exists as a dedicated SelfManager column.
SelfManager’s Video section supports uploads up to 2 GB per video, in-app playback, and original-file downloads.
Uploading requires a paid plan or lifetime deal on the table owner’s account. Videos share the document allowance: 5 GB on Individual and 25 GB on Team.
Name the recording with the report ID so it remains recognizable.
If you are evaluating SelfManager, use the seven-day trial to try the dated reporting workflow. Video uploads require the paid entitlement described above.
SelfManager can suit a freelancer or small team keeping investigation context together. For dedicated issue tracking with engineering workflows and release automation, evaluate a specialist system.
After a proposed fix, repeat the original reproduction steps.
Record:
For the fictional filter bug, confirm the transition from Web to Branding, then check the reverse transition and the unfiltered view.
Write a concrete result:
“Retested on staging build [identifier]. Web → Branding and Branding → Web display the matching project cards. Unfiltered view also checked.”
If the failure remains, reopen the report with the new evidence.
“Code changed” and “problem verified as resolved” are separate milestones.
Check that someone unfamiliar with the issue can answer these questions:
Start with the information you have and improve the report as you investigate.
For small client projects, keeping the report, recording, decisions, and follow-up tasks in one SelfManager table can make the handover easier to follow.
Include a specific title, affected feature, reproduction steps, expected and actual results, environment, evidence, and observed impact. Add an owner and next action so the report can move forward.
No. A screenshot may be enough for a static layout or text issue. Use a recording when the sequence or timing helps explain what happened.
Record the original observation, starting conditions, time, environment, and attempts to reproduce it. Mark it intermittent or not yet reproduced rather than guessing the cause.
Severity describes impact. Priority determines when to address the issue compared with other work. Record the reason behind each assessment.
Yes. Keep the report in table notes, investigation actions as tasks, and updates in comments. Add relevant images or videos alongside the work, subject to the applicable upload and storage limits.

Plan smarter, execute faster, achieve more
Create tasks in seconds, generate AI-powered plans, and review progress with intelligent summaries. Perfect for individuals and teams who want to stay organized without complexity.
Get started with your preferred account