Skip to content

Survey data analysis: reliability, EFA, KMO and regression online

This free tool runs Cronbach's alpha, EFA with the KMO and Bartlett tests, Pearson correlations and multiple regression the way SPSS does, in your browser; on the public mobi data set its regression coefficients match Python's statsmodels to the third decimal. Common cut-offs: alpha of .70 or above (Nunnally, 1978) and KMO of .50 or above (Kaiser, 1974). Upload an Excel or CSV file and it screens out invalid responses, analyses every scale and writes a numbered Results chapter with APA tables that you can download as a Word file.

  1. Upload your Excel or CSV survey file, or try the sample data
  2. Check the constructs, scale range, reverse-coded items and dependent variable
  3. Click Analyse, then copy or download the Results chapter (Word)
1. Add your survey data
One row per response. Name each item column with a construct code plus a number (PU1, PU2, PEOU1, TPB_ATT1…) so the tool can group the items. Files from forms built with the Survey Kit are recognised automatically: AC1/ACHK is an attention check, SANGLOC a screening question and TT1, TT2… demographics. Your data is processed in your browser and never sent to a server.

Send to your study group

When the whole group uses one tool, your numbers match when you merge chapters.

Was this tool useful? Feedback / report a bug (by email; please do not paste real data).

How to use it

  1. Prepare the file. One row per respondent. Name each item with its construct code plus a number so the tool can group the items: PU1, PU2, PEOU_1, prefixed codes such as TPB_ATT1, or Qualtrics-style Q1_1. ATT1–ATT4 are read as an Attitude construct, not as an attention check.
  2. Check what the tool recognised: the header row (for a two-row merged Excel header, pick the row with the codes), the scale range (1–5, 1–7…), the constructs (CODE: item1 item2 …), reverse-coded items, the attention check (for example AC1=2) and the demographic variables.
  3. Choose the dependent variable, how to run the EFA (independent and dependent variables separately, or all items together), the extraction and rotation, the number of factors, and any hypotheses that predict a negative effect. Then click Analyse.

Text answers on the standard 5-point agreement scale (Strongly disagree … Strongly agree) are converted to 1–5 automatically, and 6- or 7-point labels with "Somewhat agree" to 1–6 or 1–7; the tool tells you when it does so. The file is read in your browser and never uploaded, and 10,000 responses × 40 items run in a few seconds.

What it computes

Worked example: regression on the mobi data

Download mobi.csv from the verification page (250 mobile phone customers, 1–10 scales), set the scale to 1 and 10, and choose CUSL (customer loyalty) as the dependent variable. The tool groups the columns into six constructs by their prefixes and regresses loyalty on the other five. The results match Python's statsmodels to the third decimal:

Perceived quality has a negative coefficient even though its correlation with loyalty is positive (r = .444). This is a suppression effect: satisfaction carries most of quality's influence on loyalty, so once satisfaction is in the model the remaining direct path of quality turns slightly negative. Report the coefficient as estimated and explain it; do not drop the variable to make the sign "right".

How to read the output

Reporting it in APA 7

The Results text is written from the numbers above, with tables numbered 4.1, 4.2… and an APA reference list. A typical regression sentence reads: "The model explained 35.8% of the variance in loyalty, F(5, 244) = 28.74, p < .001. Satisfaction had the strongest positive effect (β = .398)." Statistics bounded by 1 (alpha, r, β, p, KMO) are written without a leading zero. Warnings (removed items, unreadable columns, misnamed reverse-coded items) appear above the results and are not part of the text. Check the wording and compare with SPSS the first time you use the tool; for the overall structure see how to write the Results chapter of a quantitative thesis.

FAQ

Can I run an EFA online for free without SPSS?

Yes. Descriptives, Cronbach's alpha, EFA, correlations, regression, t tests, ANOVA and Levene's test give the same results as SPSS with the same options (extraction, rotation, listwise deletion). The EFA was checked against published SPSS 27 output for six data sets and agrees to the eighth decimal; the comparison and data are on the verification page. The tool does not run CFA, CB-SEM or PLS-SEM.

Does it do Principal Axis Factoring with Promax like SPSS?

Yes. Choose Principal axis factoring and Promax. The tool uses the SPSS stopping rules (PAF stops when communalities change by less than .001 or after 25 iterations; Varimax uses RCONVERGE = .0001) and reports Communalities, Total Variance Explained, the Pattern, Structure and Factor Correlation matrices. R's psych::Promax builds its target matrix differently and can differ in the second decimal; this tool follows SPSS.

Where do I find the KMO and Bartlett's test?

In the EFA section: the first paragraph reports KMO and Bartlett's χ², df and p for each EFA. If KMO is below .50, check your sample size with the sample size calculator (at least 5 responses per item), make sure reverse-coded items are declared, and drop items with low item-total correlations one at a time before re-running.

Why are there fewer valid responses than rows in my file?

Section 4.1 lists how many responses were removed for each reason: failed screening question, missing answers, failed attention check, or the same answer to every item. Untick the straightlining option or clear the attention-check box if those rules do not fit your study.

One of the free research tools of Research Corner.