Bug report form template
The difference between a bug report an engineer can act on immediately and one that requires a follow-up email is usually three fields: what happened, what should have happened, and what environment it happened in. This template asks for those explicitly instead of one open "describe the issue" box, because a free-text box almost never contains all three without being prompted.
Copy-paste HTML
<form action="https://send.webforms.to/wft_your_key" method="POST">
<label for="email">Your email</label>
<input type="email" id="email" name="email" required>
<label for="severity">Severity</label>
<select id="severity" name="severity" required>
<option value="">Select...</option>
<option value="Blocker">Blocker</option>
<option value="Major">Major</option>
<option value="Minor">Minor</option>
<option value="Cosmetic">Cosmetic</option>
</select>
<label for="steps">Steps to reproduce</label>
<textarea id="steps" name="steps" required></textarea>
<label for="expected">Expected behavior (optional)</label>
<textarea id="expected" name="expected"></textarea>
<label for="environment">Browser / device / OS (optional)</label>
<input type="text" id="environment" name="environment">
<label for="screenshot">Screenshot (optional) (optional)</label>
<input type="file" id="screenshot" name="screenshot">
<button type="submit">Submit</button>
</form>Replace https://send.webforms.to/wft_your_key with your own endpoint from the WebForms dashboard.
Why these fields
- Severity is a required select at the top, not an afterthought, because it's the field that decides whether someone looks at this today or next sprint - burying it in a paragraph means it gets missed on a quick triage pass.
- "Steps to reproduce" and "expected behavior" are separate fields rather than one combined box. Splitting them forces the reporter to actually think through both halves, and it means an engineer scanning submissions can read just the steps field across many reports without wading through prose each time.
Where to send it
Get your endpoint
Free for 300 submissions a month. No card required.
Start freeBug report form FAQ
Yes, via a webhook - WebForms sends a signed POST with the full submission to any URL you configure, which you can wire to Linear's or Jira's API, or to Zapier/Make if you'd rather not write the integration code yourself.
Making "steps to reproduce" required (rather than optional) filters out a surprising share of low-effort submissions on its own - if someone can't be bothered to describe the steps, they usually won't submit at all.