Arte SheetsLearn. Try. Understand.

Labor Economics & Personnel Economics

Shapiro-Stiglitz No-Shirking Efficiency Wage Formula

Compute the Shapiro-Stiglitz No-Shirking Condition wage w_NSC(u) = b + e + (e/q)*(r + s/u) and solve involuntary equilibrium unemployment u* against MPL.

Explain why imperfect monitoring makes zero unemployment impossible in equilibrium!

Carl Shapiro and Joseph Stiglitz (1984) proved why competitive firms deliberately pay wages ABOVE market-clearing levels: when on-the-job shirking saves effort e > 0 and is detected only at hazard rate q > 0, getting fired carries zero penalty if unemployment u = 0 (since a fired worker immediately finds an identical job!). In steady state, outflow from unemployment equals exogenous breakups, giving total discount + turnover term r + s / u and the No-Shirking Condition (NSC) wage floor: w_NSC(u) = b_u + e + (e / q) * (r + s / u)! Equating w_NSC(u*) to competitive marginal product MPL solves exact involuntary equilibrium unemployment u* = (s * e / q) / (MPL - b_u - e - (e * r) / q)!

Verify with unemployment benefit b_u = 30 (B2), effort disutility e = 10 (B3), discount rate r = 0.05 (B4), exogenous breakup hazard s = 0.15 (B5), monitoring detection hazard q = 0.50 (B6 -> e / q = 20), unemployment rate u = 0.10 (B7), and labor marginal product MPL = 71 (B8): required efficiency wage is 30 + 10 + 20 * (0.05 + 1.50) = 71.00, matching MPL = 71 at involuntary unemployment u* = (0.15 * 20) / (71 - 30 - 10 - 1) = 3 / 30 = 0.1000 (10.00%)! Double monitoring precision q to 1.00 and equilibrium unemployment drops in half to 1.5 / 30.5 = 0.0492 (4.92%)!

Shapiro-Stiglitz Metric (b=30, e=10, r=0.05, s=0.15, MPL=71)q = 0.50 (Baseline)q = 1.00 (Better Monitoring)
Information Rent Multiplier (e / q)20.0010.00
NSC Wage at u = 10% w_NSC(0.10)71.0055.50
Equilibrium Involuntary Unemployment u*0.1000 (10.00%)0.0492 (4.92%)

Shapiro-Stiglitz No-Shirking Wage Floor w_NSC(u) Formula

Validate b_u >= 0, effort e > 0, discount rate r > 0, separation rate s > 0, detection hazard q > 0, and unemployment 0 < u < 1.

=LET(b_un, B2, e_ef, B3, r_ds, B4, s_br, B5, q_dt, B6, u_rt, B7, IF(OR(b_un < 0, e_ef <= 0, r_ds <= 0, s_br <= 0, q_dt <= 0, u_rt <= 0, u_rt >= 1), "Invalid NSC Input", ROUND(b_un + e_ef + (e_ef / q_dt) * (r_ds + s_br / u_rt), 4)))

Equilibrium Involuntary Unemployment Rate u* Where w_NSC(u*) = MPL Formula

Check viable employment condition MPL > b_u + e + (e * r) / q + (e * s) / q (so interior 0 < u* < 1 exists).

=LET(b_un, B2, e_ef, B3, r_ds, B4, s_br, B5, q_dt, B6, mpl_w, B8, IF(OR(b_un < 0, e_ef <= 0, r_ds <= 0, s_br <= 0, q_dt <= 0), "Invalid NSC Input", LET(den_w, mpl_w - b_un - e_ef - (e_ef * r_ds) / q_dt, num_w, s_br * (e_ef / q_dt), IF(den_w <= num_w, "MPL Too Low (Market Shut Down)", ROUND(num_w / den_w, 4)))))

Try the example

Use the original values or change them to test your understanding.

Further reading