Docs Help Troubleshooting & FAQ
Help

Troubleshooting & FAQ

This page lists the errors and blockers you’re most likely to hit at each stage of the workflow, what causes them, and how to fix them, followed by a short FAQ. If something here doesn’t match what you see, send us a note from the in-app Feedback button and tick “Can we contact you about this?” so we can follow up.

Uploading a curve (CSV)

The upload step reads a digitized Kaplan–Meier curve from a CSV. Almost every upload problem comes down to the file format or the data inside it.

What you seeWhyFix
The file is rejected and the columns can’t be readThe file isn’t a plain CSV, or the delimiter wasn’t recognisedSave the file as a plain .csv, .txt, or .tsv file (comma, semicolon, tab, or pipe separated), not an .xlsx spreadsheet, then upload again.
“File not accessible, it may be stored in the cloud”The file is an online-only placeholder synced by OneDrive, iCloud, or similar, so its contents aren’t on disk yetIn your file explorer, right-click the file and choose “Always keep on this device” (or open it once to download it), then try the upload again.
Time or survival columns aren’t recognisedThe CSV doesn’t have a clear time and survival column, or the values aren’t numericProvide two numeric columns, time and survival. A header row only needs to contain those words (case-insensitive), and a file with no header row is also accepted. Don’t include patient identifiers or text labels.
“Potentially identifiable column detected”A column header looks like a personal identifier, for example patient_name, mrn, or subject_idDelete that column and upload again. The named column is refused rather than quietly dropped, so nothing from it is sent.
“Unexpected column”The CSV carries a third column beyond time and survival, for example notes, a centre code, or the at-risk countsRemove the extra column; at-risk counts are entered in the app during reconstruction, not in the CSV. Descriptive names such as Time (months) are fine for the two real columns.
Survival values are rejected as out of rangeSurvival is expected as a probability between 0 and 1, but the file holds percentages (for example 95 instead of 0.95)Divide the survival column by 100 so every value sits between 0 and 1.
The file is too large to acceptThe upload exceeds the size or row limitKeep the file under 5 MB and 5,000 rows. A digitized curve rarely needs more than a few hundred points; thin out very dense exports before uploading.
“Missing time column header” or “Missing survival column header”, or an ambiguous-header errorNeither header contains the word time or survival (for example Month or OS), or one header matches both (for example Survival time)Rename the columns so exactly one contains time and one contains survival; case doesn’t matter, but the two words can’t both land in the same header.
“Could not detect CSV delimiter”The file has too few rows to detect a delimiter, or it isn’t really a CSV (for example a spreadsheet renamed or dragged in with a .csv extension)Confirm the file is plain text with at least a few rows, saved with a comma, semicolon, tab, or pipe delimiter, not exported directly from a spreadsheet program.

At-risk table & reconstruction

Reconstruction combines the digitized curve with the at-risk numbers from the publication. The inputs have to be internally consistent, so this is where most survival-workflow errors surface.

What you seeWhyFix
“Enter the N at risk values.” or “Separate the N at risk values with commas.”The at-risk field is empty, or the numbers aren’t separated by commas (a table pasted from a PDF often uses spaces instead)Enter the numbers at risk as comma-separated positive values, one per reported time point. A live count next to the field (“X of Y values entered”) tracks how many you’ve entered against the grid your max time and time step imply.
“Enter one N at risk value per time point: expected N…, found M.”The count of at-risk values doesn’t match the time grid implied by your max time and time stepMatch the count to the grid, or adjust the max time or time step so they agree. A single trailing “0 at risk” beyond the expected count is tolerated.
“N at risk can’t increase: value X is larger than value Y.”At-risk counts should only fall or stay flat over time; a value is larger than the one before it, usually a transcription slipCheck the at-risk row against the source publication. Each value must be no larger than the one before it.
“Enter a max time and time step greater than 0.” or “The time horizon is too large for this time step.”Either field is missing, zero, or negative; or the step is so small relative to the max time that the grid is enormousEnter positive values. If you see the time-horizon message, increase the time step or reduce the max time.
“Need at least 3 data points”Too few usable rows remain after cleaningDigitize more points along the curve, especially around the steps, and re-upload.
“Reconstruction failed. Check the curve and the at-risk values, then try again.” or a timeout messageAn internal step couldn’t produce a dataset from your inputs, or a very large input ran past the time limitRetry with fewer points or a smaller time horizon. If it keeps failing, re-check the curve and at-risk inputs for inconsistencies.
The reconstructed curve drifts from the digitized one. This is almost always a mis-specified time step, for example entering yearly at-risk counts while the step is set to quarterly. Use the overlay and the validation checks (median-survival and at-risk differences) to confirm the two curves track each other. See The Guyot algorithm for why the time step matters.

Fitting parametric models

Each distribution is fitted independently, so one model’s trouble doesn’t stop the others. Results are ranked by AIC, with BIC shown alongside and “Best AIC” / “Best BIC” badges marking the top model for each.

  • A distribution is missing from the results table. That model failed to converge on your data, often because the data are sparse or the tail is awkward for that shape. A note beneath the list names which one(s) didn’t fit. Generalized Gamma is fitted last, so it can appear a few seconds after the rest.
  • “None of the distributions could be fitted to this data”. This points to a problem upstream rather than with any single model. Revisit the reconstructed data: re-check the curve, the at-risk table, and the overlay, then run Reconstruct IPD again.
Don’t pick a model on AIC/BIC alone. Judge each fit by the clinical plausibility of its extrapolated hazard. See Parametric distributions for guidance.

Budget Impact Analysis

BIA problems are usually validation blockers: the app won’t let you reach the results until the inputs are internally consistent.

What you seeWhyFix
The market-share total reads “(must equal 100%)”, or a blocker says a scenario’s shares don’t sum to 100%The shares across treatments don’t add up to 100% (within a small rounding tolerance)Adjust the shares, or use “Normalize to 100%” (uniform mode) or each year’s own “Normalize” button (per-year mode) to rescale automatically. In per-year mode, each year has to sum to 100% on its own.
Weight categories flagged, or “Total share: X% (must sum to 100%)”Weight-based dosing needs weight categories, and the category shares must sum to 100%Add weight categories that sum to 100% (each with a weight above 0). Once categories are in use, the single mean-weight field is replaced by the category table; “Use single weight” brings it back.
The time horizon is rejectedThe horizon is outside the allowed rangeEnter a whole number of years between 1 and 10.
“Run analysis” stays greyed out, with a “Cannot run yet” list beneath itA required input is still empty or invalid (market shares, time horizon, weight categories, or a missing comparator)Each item in the “Cannot run yet” list has its own “Fix this” button that jumps to the field. Resolve every item and Run analysis unlocks.
“No current pathway” in the blocker list, or a discount-rate promptNo comparator has been entered and “No comparator” isn’t ticked, or discounting is switched on with no rate enteredAdd at least one comparator (a treatment, a pathway cost, or a fixed cost), tick “No comparator (new treatment only)” instead, or enter a discount rate (0 leaves costs undiscounted).
Running without a comparator? Tick No comparator (new treatment only) under Advanced settings and the Current treatments panel is hidden and the market-share step is skipped. The Next button reads “Next: Results” and runs the analysis straight away, once the other required inputs are valid.

Saving, account & sharing

What you seeWhyFix
“Autosaving…” then “⚠ Autosave failed” or “⚠ Not saved”; or an “Autosave off” indicatorA background save couldn’t complete, the project has never been saved yet (“Not saved”), or autosave is switched off for this browserClick Save. After “Not saved”, save before you reload or the work is lost. If autosave is off, turn it back on (it’s remembered per browser); on a new project Save stays greyed out until there’s something to save, so hover it to see what’s missing.
A “⚠ Conflict” indicatorThe project was updated somewhere else since you loaded it, by another person or in another browser tab you have openReload the page, or open the latest version from Version history, then re-apply your change.
“Project too large to save. Try removing endpoints or contact support if this keeps happening.”The saved project exceeds the storage size limitRemove one or more endpoints (or otherwise trim the analysis) and save again. If it persists, use the in-app Feedback button or email eemil@easyhta.com.
“Your subscription has expired. This project is read-only.”Your trial or subscription has expiredReactivate your subscription, then open Settings > Billing.
“You are viewing this project as a workspace viewer.”You’re viewing as a workspace viewerAsk a workspace owner to make you a member. On a Team workspace the member seat is your licence, so you don’t need a subscription of your own; see Workspaces & collaboration.
“…is an Analyst Pro feature”, with an “Upgrade to Analyst Pro” button in place of resultsYour plan doesn’t include this analysis typeClick Upgrade to Analyst Pro.
A “Connection Problem” banner: “We couldn’t reach the server.”The app couldn’t reach the serverUse the Retry button. If it persists, check your internet connection; it may also be a brief server outage.
“Export failed. Please try again.” or “Failed to export to Excel. Please try again.”The export was interruptedClick export again. If it keeps failing, reload the page and retry.
“Not available in the demo. Start your free trial to bring your own data.”The demo only works on the example analysis, so your own data and new projects are off limitsStart a free trial to upload your own curves and create your own projects.

FAQ

Do I need digitized curves for a Budget Impact Analysis?

No. BIA opens on its Overview and needs no curves. Digitized KM data is only required for the survival templates (Partitioned survival and Partitioned survival with cure model).

Can workspace viewers edit an analysis?

No. Viewers have read-only access. Only a workspace owner can promote a viewer to member, and a member seat in a Team workspace is the licence, so the person promoted needs nothing of their own. Ask a workspace owner if you need edit access. See Workspaces & collaboration for the full breakdown of roles.

My trial ended. Can I still see my work?

Yes. Expired projects become read-only, so you can still open and review them. Reactivate your subscription, then open Settings > Billing, to edit or run new analyses.

Where do I get the variance–covariance matrix for PSA?

From the Excel export. The full variance–covariance matrices are included in the exported workbook, on the estimation scale the fit was made on; see the export reference for how to sample from them.

Account and billing

How do I reset my password?

On the sign-in page, click Forgot password?, enter your email and the verification code we send you, then choose a new password.

How do I set up two-factor authentication?

Open Settings > Security, click Set up authenticator app, and add the account in your authenticator app.

Where are my invoices, and how do I change my plan?

On Settings > Billing, Manage billing and invoices opens the Stripe billing portal for invoices and your payment method, and the plan cards there switch your plan. Upgrades are charged immediately, and downgrades start at your next renewal.

How do I download my data?

On Settings > Billing, under Your Data, click Download my data.

How do I delete my account?

Email eemil@easyhta.com to request deletion of your account and its data.

Survival analysis, cost-effectiveness and budget impact for health technology assessment teams.

EasyHTA on LinkedIn LinkedIn

Graphics and branding by Ilari Ilvessalo · EasyHTA Oy 2026. All rights reserved.