Reference
FAQ
The questions that come up most: supported assays, data format, exports, billing, and what to do when a fit looks wrong
Getting started
What does Gradiance actually do?
It takes a CSV or plate-reader export, identifies the assay, fits the right model, and returns a publication-ready figure plus the parameters with confidence intervals. Every result comes with the raw data, the fitted equation, and a Python script that reproduces the analysis from scratch.
Do I need to write code?
No. The interface is conversational: drop the file, describe what you want in plain English, the agent does the rest. Code is exported with every result for reproducibility, but you never have to read it.
Which file formats can I upload?
CSV, Excel (.xlsx and .xls), and tab-separated. Multi-file uploads are supported — drop several files at once and they get treated as related datasets within the same run. See Uploading data for layout conventions and common parse errors.
Do I have to pick the assay before uploading?
No, the order is the other way around. Drop the file first; Gradiance inspects it and surfaces the most likely assays at the top of the picker (a serial-dilution shape suggests endpoint titer or dose-response, a 96-well grid with blanks suggests a standard curve, and so on). You can override the suggestion or pick Custom Analysis to let the agent infer everything from a one-line prompt.
Is my data secure?
Uploads are encrypted in transit (HTTPS/TLS) and at rest in S3. Every API endpoint that backs the workspace checks that the signed-in user owns the run before returning anything, so a leaked URL doesn't expose data to a different account. The fitted result, parameters, and exports stay attached to the run for as long as you keep the run; raw uploaded files have a shorter retention than the result record itself. We do not sell your data and we do not train models on it.
Supported assays
What assays does Gradiance fit?
The supported workflows in the new-run picker:
- Quantification — endpoint titer ELISA, standard curve / sandwich ELISA, BCA / Bradford protein. See Standard curves.
- Potency & dose response — IC₅₀ / EC₅₀, cytotoxicity (CC₅₀), neutralization (NT₅₀, including Spearman-Kärber TCID₅₀ via the freestyle path). See Dose-response.
- Gene expression — qPCR ΔΔCt and qPCR absolute quantification. See qPCR.
- Kinetics — enzyme kinetics (Michaelis-Menten), bacterial / cell growth curves, kinetic ELISA initial-slope. See Kinetics.
- Cell-based — cell viability (MTT, MTS, AlamarBlue, CellTiter-Glo), CFU plate counts. See Cell-based assays.
- Binding & affinity — saturation binding (Kd / Bmax), competition binding (Ki via Cheng-Prusoff). See Binding.
- Custom / freestyle — describe your experiment, the agent picks the model and writes the analysis Python in-line. Right when nothing in the catalog quite fits.
Free accounts can run 3 analyses a month and export PNG (with a small watermark). Pro raises the run cap and unlocks SVG, PDF, CSV, Excel, Python, and audit-bundle exports. The full pricing matrix is on the pricing page.
Western blot densitometry — coming?
It's on the picker as “Soon.” You can run it through the freestyle workflow today by including normalized band intensities; a dedicated workflow will land soon.
What's the difference between 4PL and 5PL?
4PL fits a symmetric sigmoid (top, bottom, IC₅₀, Hill). 5PL adds an asymmetry parameter so the curve can have different slopes on each side of the inflection. Use 4PL by default; the agent will suggest 5PL when the residuals show clear asymmetry.
Reading results
How do I know if my fit is good?
Every fit ships with a quality tier (excellent / good / fair / poor) derived from R². Excellent is > 0.98; below 0.95 means look at the residuals before quoting the parameters. See Quality Control for the specific thresholds and flags.
The CIs on my parameter are huge. What happened?
Wide CIs mean the data don't actually identify that parameter. Most often it's an asymptote that never plateaued. Add doses past where you stopped, or constrain the parameter if you have prior information. See Understanding your results for the CI taxonomy.
Can I exclude an outlier?
Yes. Tell the agent which point: “exclude the 100 µM point” or “drop replicate 3 at the highest dose,” and it refits in place. Points whose residuals are inconsistent with the converged fit are flagged on the plot (rendered as a red ×) and surfaced in the QC panel, but no point is removed from the fit unless you ask. We prefer the explicit decision over a silent auto-drop.
Can I fix Top or Bottom to a known value?
Yes. “Fix bottom to 0,” “constrain top to 100,” “fix Hill to 1” all work. A pinned parameter doesn't get a CI — the constraint is treated as ground truth. See Dose-response for when constraints help versus hurt.
The agent picked the wrong columns. How do I fix it?
Just say so: “use Conc_uM as the concentration and OD450 as the response.” The agent re-runs with the corrected mapping.
Exports & reproducibility
What can I export?
- PNG (300 DPI) — figure for slides and print. Available on Free; watermarked on Free, clean on Pro.
- SVG — vector for editing in Illustrator or Inkscape. Pro+.
- PDF report — figure, parameters, method, and provenance compiled in-browser. Pro+.
- CSV — fitted values, residuals, and outlier flags. Pro+.
- Excel — same content as CSV, multi-sheet, formatted. Pro+.
- Python script — a standalone
<runname>_reproducibility.pythat loads your raw data and recomputes every parameter. Pro+. - Audit bundle (JSON) — the full provenance record: input file hashes, fit parameters, agent steps, model versions. Useful when you need to attach a reviewable trail. Pro+.
Can I re-run the analysis offline?
Yes. The exported Python script is fully self-contained: it loads your CSV, fits the same model with the same constraints, and produces the same numbers. The dependencies are pinned to Python 3, NumPy, SciPy, and matplotlib — anyone can re-run it in any environment a year later and get identical output.
How do I cite Gradiance in a paper?
See How to cite for APA, BibTeX, RIS, and a suggested methods paragraph.
Statistical methods
What algorithms are under the hood?
Non-linear least squares via Levenberg-Marquardt (SciPy curve_fit). 95% CIs from the covariance matrix of the fitted parameters, with t-statistic correction for the degrees of freedom. Cheng-Prusoff for Ki, Spearman-Kärber for TCID₅₀, ΔΔCt for relative qPCR, and a one-way ANOVA + Tukey HSD for post-hoc multiple comparisons. See Statistical methods for the full list and the validation table.
How are confidence intervals calculated?
From the covariance matrix of the converged fit, multiplied by the t-statistic at α = 0.05 with the right degrees of freedom. For non-Gaussian parameters (e.g. log-IC₅₀), CIs are computed in the fit space and back-transformed to the reported scale.
Pricing & account
Is there a free tier?
Yes. Three runs per month and PNG export with a small watermark. No card required. The full pricing matrix — including which assays are featured for which tier — lives on the pricing page.
What do paid tiers add?
Pro ($29/mo) raises the run cap to 100/month, removes the watermark, and adds SVG, PDF, CSV, Excel, Python, and audit-bundle exports. It also turns on the live code panel (the agent's Python visible in real time). Team ($99/mo) layers on shared workspaces, SSO, an API, and white-glove onboarding for an entire group.
What happens to my data if I cancel?
Account access continues through the end of your billing period — exports stay enabled the whole time. After that the account drops back to Free-tier limits; saved runs remain readable, but new runs respect the Free quota. You can request immediate deletion at any time from settings or by emailing us.
Is there an API?
Yes — Team plans include an API key for programmatic run creation. On Free and Pro, the integration path is the exported Python script (which is self-contained and runs anywhere) and the share-link feature for sending finished runs to collaborators.
Does it work offline?
The web app needs an internet connection. The exported Python scripts run anywhere with Python 3, NumPy, SciPy, and matplotlib installed.
Still stuck?
Email us at hello@gradiancebio.com with your run ID and a description of what looked wrong. We read every message.