| # | Symptom item | Score | Pressure lane |
|---|---|---|---|
| {{ row.id }} | {{ row.label }} | {{ row.score }}/3 | {{ row.lane }} |
{{ triageLane.summary }}
When to seek support: {{ triageLane.supportText }}
| # | {{ resultText.questionCol }} | {{ resultText.answerCol }} |
|---|---|---|
| {{ answer.id }} | {{ answer.text }} | {{ answer.answer }} |
Anxiety screens try to turn a messy two-week stretch into something more readable. The Generalized Anxiety Disorder 7-item scale, usually called GAD-7, does that by asking how often seven common anxiety symptoms have shown up and then converting those answers into a single score that can be tracked over time.
This package keeps that scoring core intact and adds a practical interpretation layer around it. After the seven scored items, it asks the standard difficulty question, then builds a GAD-7 Snapshot with the total score, severity band, a 10+ threshold badge, the difficulty label, a package-specific triage lane, and an optional change from a prior GAD-7 total.
That makes the tool useful in more than one situation. A first pass can help someone decide whether recent worry, tension, irritability, or restlessness looks minor, persistent, or heavy enough to bring into a clinical conversation. A follow-up run is more about direction: has the score moved, and has daily life become harder?
A realistic example is a person who scores in the mild range but marks daily life as Very difficult. The raw score alone might look modest, yet the package will still place that result in a more urgent follow-up lane because functional strain changes how the same number should be read.
This screen is informational and not a diagnosis. A score at or above the common screening threshold does not by itself confirm generalized anxiety disorder, and a lower score does not cancel out urgent distress, safety concerns, or fast worsening. If symptoms feel unmanageable or safety is in question, use direct human support rather than the score alone.
Start with Assessment lens, but treat it as framing rather than scoring. Screening check, Monitoring follow-up, and Care planning change the wording in the brief and roadmap tabs. They do not change the seven answers, the 0 to 21 total, or the severity band.
Leave Prior GAD-7 score blank unless you know it came from another complete GAD-7. The package rounds and clamps that baseline to the 0 to 21 range, then uses it only for the delta badge and JSON field delta_from_prior. An uncertain earlier number can make the trend look more exact than it really is.
Main disruption context is another interpretation aid, not a scoring input. Choosing Work or study, Home responsibilities, Relationships or social situations, or Sleep and nighttime worry changes the support-roadmap wording so the follow-up steps feel closer to the pressure you are trying to manage.
When you are using the tool for repeat monitoring, keep the comparison conditions steady. Use the same two-week recall window, answer the same seven symptom prompts instead of mixing tools, and read the total score together with Difficulty and the triage lane. A drop from 10 to 8 tells a different story if daily functioning still feels Very difficult.
Before you trust the result, read the top summary as one package: score_total, severity_band, the 10+ threshold badge, the difficulty label, and any score change from baseline. Then open Symptom Pressure Map to see whether one or two items are doing most of the work. All scoring stays in the browser, but the answer string and setup choices are kept in URL-backed state, so a copied link can recreate sensitive information.
The scoring model is the standard GAD-7 sum. Items 1 through 7 use the four response levels Not at all, Several days, More than half the days, and Nearly every day, mapped to integers 0 through 3. The eighth prompt asks how difficult the problems have made work, home responsibilities, or relationships, but it is displayed separately and is not added into the total.
The package maps totals of 0 to 4 to Minimal, 5 to 9 to Mild, 10 to 14 to Moderate, and 15 to 21 to Severe. The boolean field screening_flag_score_ge_10 flips to true at 10, matching the common screening threshold cited in the original validation work. Assessment lens and Main disruption context do not change these cut points.
This implementation adds a package-specific triage layer on top of the instrument score. High-priority follow-up lane appears when the total reaches 15 or when the difficulty item is 2 or 3, which corresponds to Very difficult or Extremely difficult. Scores of 10 to 14 without that higher difficulty level enter Structured monitoring lane, 5 to 9 enter Self-management lane, and 0 to 4 enter Maintenance lane.
The item-level view is intentionally simpler than a separate subscale system. Symptom Pressure Map shows each of the seven scored items with a raw score from 0 to 3 and a lane label of Quiet, Watch, Elevated, or High pressure. That helps explain where the burden sits without claiming a new index.
All computation is local to the browser. There is no tool-specific fetch call or backend scoring path in this package. The response string r stores seven or eight characters made of digits 0 to 3 and hyphens for unanswered items, and the opening settings are also URL-backed. That makes repeat checks convenient, but it also means copied links can reproduce answers, baseline, and context.
The package computes the current score and optional score change with these quantities:
| Symbol or field | Meaning | Range or type | Where it appears |
|---|---|---|---|
S |
Total score from the seven scored symptom items | integer 0-21 | GAD-7 Snapshot, gauge, JSON |
qi |
One scored item response | integer 0-3 | Response Table, Symptom Pressure Map, JSON |
B |
Optional prior GAD-7 score after rounding and clamping | integer 0-21 | Baseline input, delta badge, JSON |
Δ |
Difference between current total and baseline | signed integer | Delta badge, JSON |
difficulty_item |
Functional difficulty caused by the symptoms | integer 0-3 shown as a label | Badge, roadmap, JSON |
triage_lane |
Package guidance band for follow-up posture | text label | Snapshot, roadmap, JSON |
| Severity band | Lower | Upper | What it means here | Useful reading cue |
|---|---|---|---|---|
Minimal |
0 | 4 | Low reported anxiety burden over the last two weeks | Do not ignore new strain if the difficulty item is high |
Mild |
5 | 9 | Symptoms are present but below the common 10-point threshold | Check item-level pressure and functional difficulty before dismissing it |
Moderate |
10 | 14 | Crosses the usual screening cutoff used in many clinical settings | Use the result as a prompt for structured follow-up, not a diagnosis |
Severe |
15 | 21 | High recent symptom burden | Prompt support is the safer reading, especially if difficulty is elevated |
| Rule or output | Package behavior | Why it matters |
|---|---|---|
10+ threshold |
Set when score_total >= 10 |
Marks the common screening cutoff used in the brief summary |
High-priority follow-up lane |
Triggered by score_total >= 15 or difficulty item >= 2 |
Functional impairment can escalate the package guidance even below 15 |
Structured monitoring lane |
Triggered by totals 10 to 14 when the higher-priority rule is not met | Keeps screening-threshold results separate from milder self-management cases |
Symptom Pressure Map |
Each item is labeled Quiet at 0, Watch at 1, Elevated at 2, and High pressure at 3 |
Shows which symptom items are driving the total |
| Roadmap escalation note | A delta of +3 or more adds a note to review recent stressors and update follow-up plans |
Separates stable higher scores from recent worsening |
Use this sequence when you want a first screen, a repeat follow-up, or a structured note for discussion.
Assessment lens, optionally enter Prior GAD-7 score, choose Main disruption context, and press Start GAD-7.Not at all to Nearly every day. The progress bar and question list show how many scored items are complete.GAD-7 Snapshot first. The main cues are the total score, severity badge, 10+ threshold badge, difficulty label, lens, context, and any delta badge.Clinical Brief and Symptom Pressure Map next. Compare the severity gauge with the item bars so you can see whether the total is broad-based or driven by a smaller cluster of symptoms.Support Roadmap, then use Response Table or JSON Record if you need a structured record for follow-up. If you share the page link, remember that URL-backed state can recreate the answers and settings.The first number to trust is score_total, but the safest interpretation comes from reading it together with severity_band, the difficulty label, and triage_lane. A higher band usually means more burden, yet the package is deliberately built so daily impairment can change the practical reading even when the total stays in a lower band.
screening_flag_score_ge_10 means the score has crossed a common clinical screening cutoff. It does not mean the tool has diagnosed generalized anxiety disorder or ruled out other causes of the symptoms.Difficulty is Very difficult or Extremely difficult. That is why the package can place a mild raw score into High-priority follow-up lane.Symptom Pressure Map is the best check against false confidence from the total alone. One or two item bars at High pressure can explain why everyday functioning feels worse than the band name suggests.When the result shows more than minimal burden, the most useful next step is usually to bring the score, difficulty label, and roadmap note into a clinician, counselor, or primary-care discussion instead of treating the number as self-sufficient.
Suppose the seven scored answers are 1, 1, 1, 0, 1, 1, and 1, with the difficulty item marked Somewhat difficult. The package reports score_total: 6, severity_band: Mild, screening_flag_score_ge_10: false, and triage_lane: Self-management lane. That does not mean the symptoms are trivial. It means the result sits below the common 10-point screening threshold, so the practical focus shifts toward repeatable routines and watching whether the score climbs.
Now imagine a monitoring visit with Prior GAD-7 score set to 7 and current scored answers of 2, 1, 2, 1, 1, 2, and 1. That sums to score_total: 10, lands in severity_band: Moderate, sets screening_flag_score_ge_10: true, and produces delta_from_prior: 3. With difficulty marked Somewhat difficult, the package places the result in Structured monitoring lane and adds the roadmap note about recent worsening.
A user answers the seven scored items as 1, 1, 1, 1, 0, 1, and 1 and expects the final summary to show. The progress bar reaches 100 percent for the scored section, but item 8 is still blank, so the package does not calculate the snapshot yet. Once the difficulty item is answered as Very difficult, the tool reports score_total: 6, severity_band: Mild, and triage_lane: High-priority follow-up lane. It is a good reminder that functional impairment materially changes the package guidance.
No. In this package, 10 or more sets screening_flag_score_ge_10 and usually moves the score into the Moderate or Severe band, but that is still screening logic rather than diagnosis. The result needs clinical context, daily-function context, and sometimes a fuller assessment.
High-priority follow-up lane with a score below 15?Because the lane logic is not based on the total score alone. The package also checks the difficulty item, and values of Very difficult or Extremely difficult are enough to move the roadmap into the higher-priority lane.
Prior GAD-7 score change today's band?No. The current answers determine score_total, severity_band, and the screening-threshold badge. The baseline is only used to calculate the optional score delta after rounding and clamping into the valid 0 to 21 range.
No tool-specific network request is built into this package. The main privacy caution is the URL-backed state, because the response string and opening settings can be reconstructed from a copied link.
Not in a strict sense. The delta and follow-up reading in this package assume that the comparison score came from another complete GAD-7 collected over a similar two-week window. Mixing instruments makes the change badge much less meaningful.