Normality and Goodness of Fit

Shapiro-Wilk Table: Critical Values of W and Coefficients

Critical values and coefficients for the Shapiro-Wilk test of normality, consistent with the W statistic reported by R, SAS, Stata and SciPy.

  • n = 3 to 50
  • Coefficients included
  • Test your data

Shapiro-Wilk Table

Two tables: critical values of W, then the coefficients aᵢ. Reject normality if W is smaller than the critical value.

Critical values of W: reject normality if W is smaller than the value

Critical values of W: reject normality if W is smaller than the value
α →
n ↓
0.010.020.050.1
30.75450.75900.77230.7939
40.69230.71680.76000.7993
50.70020.73230.77730.8129
60.71900.75030.79310.8275
70.73790.76800.80870.8403
80.75490.78370.82220.8517
90.77120.79840.83450.8619
100.78440.81060.84470.8705
110.79750.82200.85400.8782
120.80870.83210.86230.8850
130.81860.84090.86960.8910
140.82770.84880.87610.8964
150.83580.85580.88190.9014
160.84320.86250.88730.9057
170.85030.86860.89220.9098
180.85620.87400.89660.9135
190.86180.87880.90060.9168
200.86710.88340.90440.9200
210.87230.88790.90800.9228
220.87650.89150.91110.9255
230.88060.89520.91400.9279
240.88460.89870.91680.9302
250.88810.90190.91940.9324
260.89150.90480.92190.9345
270.89460.90760.92420.9363
280.89770.91020.92630.9381
290.90060.91270.92830.9398
300.90310.91510.93020.9413
310.90570.91730.93200.9428
320.90820.91940.93370.9443
330.91040.92130.93530.9456
340.91240.92320.93680.9469
350.91460.92500.93830.9481
360.91650.92670.93970.9493
370.91820.92820.94100.9504
380.92020.92990.94230.9515
390.92170.93130.94350.9525
400.92350.93280.94470.9534
410.92520.93420.94580.9544
420.92660.93550.94680.9552
430.92800.93670.94790.9561
440.92950.93800.94890.9570
450.93080.93910.94980.9578
460.93190.94020.95070.9585
470.93320.94120.95160.9592
480.93450.94240.95240.9599
490.93550.94320.95320.9606
500.93670.94430.95400.9612

Coefficients aᵢ (i = 1 pairs the largest with the smallest observation)

Coefficients aᵢ (i = 1 pairs the largest with the smallest observation)
Coefficient index (i) →
n ↓
12345678910111213141516171819202122232425
20.7071
30.7071
40.68730.1663
50.66460.2414
60.64300.28070.0883
70.62310.30300.1411
80.60510.31630.17510.0565
90.58870.32430.19820.0951
100.57370.32900.21430.12280.0401
110.56000.33150.22600.14330.0698
120.54740.33260.23450.15890.09240.0304
130.53580.33270.24080.17090.11010.0540
140.52500.33200.24550.18040.12420.07290.0240
150.51500.33090.24890.18790.13560.08810.0435
160.50560.32950.25140.19390.14480.10070.05940.0196
170.49680.32770.25320.19870.15250.11110.07270.0360
180.48850.32590.25450.20260.15890.11990.08390.04970.0164
190.48070.32380.25520.20570.16420.12730.09340.06130.0304
200.47340.32170.25570.20830.16860.13360.10150.07130.04230.0140
210.46640.31960.25580.21040.17240.13900.10850.07990.05260.0261
220.45980.31740.25570.21200.17560.14360.11450.08740.06160.03660.0122
230.45350.31520.25540.21330.17830.14760.11980.09400.06940.04580.0228
240.44750.31300.25500.21430.18060.15110.12450.09970.07640.05390.03210.0107
250.44180.31080.25450.21510.18250.15420.12850.10480.08250.06110.04040.0201
260.43630.30870.25380.21570.18420.15680.13210.10930.08790.06750.04770.02850.0095
270.43110.30650.25310.21610.18560.15910.13530.11330.09280.07320.05430.03590.0179
280.42610.30440.25230.21630.18680.16110.13810.11690.09710.07830.06020.04270.02550.0085
290.42130.30230.25150.21650.18770.16290.14060.12010.10100.08290.06550.04870.03230.0161
300.41670.30030.25060.21650.18860.16440.14280.12300.10450.08710.07030.05420.03840.02290.0076
310.41220.29830.24960.21640.18920.16580.14480.12560.10770.09080.07470.05910.04400.02920.0145
320.40800.29630.24870.21630.18980.16690.14650.12790.11060.09420.07870.06360.04910.03480.02080.0069
330.40390.29430.24770.21610.19020.16790.14810.13000.11320.09730.08230.06780.05370.04000.02650.0132
340.39990.29240.24670.21580.19060.16880.14950.13190.11550.10020.08560.07150.05800.04480.03180.01900.0063
350.39600.29050.24570.21550.19080.16960.15080.13360.11770.10280.08860.07500.06190.04910.03660.02430.0121
360.39230.28870.24470.21510.19100.17030.15190.13510.11970.10510.09140.07820.06550.05310.04100.02920.01740.0058
370.38870.28690.24370.21470.19110.17080.15290.13650.12150.10730.09390.08110.06880.05680.04510.03360.02230.0111
380.38530.28510.24270.21420.19110.17130.15380.13780.12310.10930.09630.08380.07180.06020.04890.03780.02690.01610.0054
390.38190.28330.24170.21380.19110.17170.15460.13900.12460.11110.09840.08630.07460.06330.05240.04160.03110.02060.0103
400.37860.28160.24060.21330.19110.17210.15530.14000.12600.11280.10040.08860.07720.06630.05560.04520.03500.02490.01490.0050
410.37550.28000.23960.21280.19100.17230.15590.14100.12720.11440.10230.09070.07970.06900.05860.04850.03860.02880.01910.0096
420.37240.27830.23860.21220.19080.17260.15640.14180.12840.11580.10400.09270.08190.07150.06140.05160.04190.03250.02310.01380.0046
430.36940.27670.23760.21170.19070.17270.15690.14260.12940.11710.10560.09460.08400.07390.06400.05450.04510.03590.02680.01780.0089
440.36650.27510.23660.21110.19050.17290.15730.14330.13040.11840.10700.09630.08600.07610.06650.05720.04800.03910.03030.02150.01290.0043
450.36370.27360.23560.21050.19020.17300.15770.14390.13130.11950.10840.09790.08780.07810.06880.05970.05080.04210.03350.02500.01660.0083
460.36090.27200.23460.20990.19000.17300.15800.14450.13210.12050.10970.09940.08950.08010.07090.06200.05340.04490.03650.02830.02010.01210.0040
470.35820.27050.23360.20930.18970.17300.15830.14500.13280.12150.11080.10080.09110.08190.07290.06420.05580.04750.03940.03140.02340.01560.0078
480.35560.26910.23270.20870.18940.17300.15850.14550.13350.12240.11190.10210.09260.08350.07480.06630.05800.05000.04200.03420.02650.01890.01130.0038
490.35310.26760.23170.20810.18910.17300.15870.14590.13410.12320.11300.10330.09400.08510.07660.06830.06020.05230.04460.03690.02940.02200.01460.0073
500.35060.26620.23080.20750.18880.17290.15890.14630.13470.12400.11390.10440.09530.08660.07820.07010.06220.05450.04690.03950.03220.02490.01780.01060.0035

Tip: click any value to highlight its row and column.

How to read this table

  1. Sort the data: x₍₁₎ ≤ x₍₂₎ ≤ … ≤ x₍ₙ₎.
  2. Using the coefficients for your n, compute b = Σ aᵢ (x₍ₙ₊₁₋ᵢ₎ − x₍ᵢ₎), pairing the largest value with the smallest, and so on.
  3. W = b² / Σ(xᵢ − x̄)².
  4. Reject normality if W is smaller than the critical value for your α.

Worked example

Twenty biomarker values give W = 0.89. Row 20, α = 0.05 gives 0.9044 and α = 0.01 gives 0.8671. Because 0.8671 < 0.89 < 0.9044, normality is rejected at the 5% level but not at the 1% level (0.01 < p < 0.05). A log transformation is often the next step for skewed laboratory values.

Click the underlined links to highlight the value in the table.

Calculator

For values between the rows and columns of the table. Results update as you type.

Formula and how the values were computed

W = (Σ aᵢ (x₍ₙ₊₁₋ᵢ₎ − x₍ᵢ₎))² / Σ (xᵢ − x̄)²

Coefficients follow Royston's algorithm (AS R94), which approximates the exact values m′V⁻¹ closely and is what modern software uses. Critical values are percentiles of W with these coefficients, estimated from 4 million simulated normal samples for each n (n = 3 is exact). For n above about 20 they differ from Shapiro and Wilk's original 1965 table, whose coefficients were approximations; use this table with the coefficients on this page or with software output.

Frequently asked questions

Why do these values differ from some printed tables?

Printed tables often reproduce Shapiro and Wilk's 1965 values, which used approximate coefficients for n > 20. Royston's coefficients are closer to the exact ones and are used by R, SAS, Stata and SciPy, so this table matches the W you get from software.

My sample is large. Should I rely on the test?

With large samples the test rejects for trivial departures from normality. Look at a normal Q-Q plot as well, and remember that t-tests and ANOVA are robust to moderate non-normality in large samples.

Related calculators and tutorials