{"schema_version": 1, "id": "des-moines-west-des-moines-ia-msa/metro-job-market/2026-09", "product": "Metro Job Market Pulse", "metro": {"geography_id": 114, "label": "Des Moines-West Des Moines, IA MSA", "slug": "des-moines-west-des-moines-ia-msa"}, "focus_area": {"key": "general_conditions", "slug": "metro-job-market", "label": "General Market Conditions"}, "period": "2026-09", "public_after": "2026-09-01", "frozen_at": "2026-10-09T13:38:49.714015+00:00", "headline": "Des Moines wage growth splits along white-collar, logistics lines.", "headline_summary": "Operations Manager pay climbed to $126,910 and Registered Nurse pay to $109,595 this month, while CDL Truck Driver pay slipped to $76,960 as Iowa's unemployment held steady at 3.2% for a fourth straight month.", "key_indicators": [{"label": "Iowa unemployment rate", "value": "3.2%", "context": "Steady for 4th month; vs 3.5% year ago, 4.2% national"}, {"label": "Iowa employed population", "value": "-7,500 YoY", "context": "Driven by retirement outflows, not layoffs"}, {"label": "Statewide job openings", "value": "60,378", "context": "Against near-zero net annual job growth statewide"}, {"label": "National wage vs. inflation gap", "value": "3.0% vs 3.4%", "context": "First sustained real-wage decline since 2021"}], "takeaways": [{"headline": "Finance and health services are carrying local wage momentum.", "body": "Registered Nurse and Financial Analyst pay both rose significantly this month, consistent with regional data showing Finance and Insurance as the metro's highest-paying sector at roughly $123,927 average annual wage. This suggests the metro's wage growth is increasingly concentrated rather than broad-based across the basket."}, {"headline": "Logistics and production pay softness tracks statewide sector data.", "body": "CDL Truck Driver and Manufacturing Production Worker advertised pay both moved down moderately locally, mirroring Iowa's statewide trend of trade/transportation losing 5,200 jobs annually. A metro built partly on logistics and food/ag manufacturing should watch whether this softness is cyclical or structural."}, {"headline": "Labor force attrition, not layoffs, is the state's binding constraint.", "body": "Iowa's employed population fell 7,500 year-over-year even as unemployment held at 3.2%, a pattern state economists attribute to retirement outflows among 45-54-year-olds rather than job separations. For a metro with 60,378 statewide openings, this demographic drain \u2014 not weak demand \u2014 appears to be capping expansion capacity."}, {"headline": "Operations and marketing pay strength hints at business reinvestment, not retrenchment.", "body": "Operations Manager pay rose significantly to $126,910, nearly 49% above the national median, while Marketing Specialist pay also climbed significantly. Both point toward local firms investing in growth and customer-facing functions even as some goods-movement roles cool."}], "local_conditions": "Des Moines metro wage gains cluster in finance, healthcare, and operations roles \u2014 Registered Nurse pay up significantly to $109,595 and Operations Manager pay up significantly to $126,910 \u2014 while goods-movement and production roles soften, with CDL Truck Driver pay down moderately to $76,960 and Manufacturing Production Worker pay down moderately to $37,648. Statewide, Iowa's unemployment rate held at 3.2% for a fourth straight month in August, but total employed Iowans fell 7,500 year-over-year, a gap driven by retirement outflows rather than job losses, even as 60,378 positions remain open statewide.", "implications": "Divergence between white-collar/skilled-service wage acceleration and softening logistics/production pay is consistent with a metro economy still expanding in professional, financial, and health services while goods-movement and manufacturing cool \u2014 a pattern commerce leaders should read as sector rotation, not broad contraction. For economic development and chamber planning, the combination of near-zero statewide net job growth and 60,378 unfilled openings suggests capacity constraints rather than demand weakness are the binding limit on local expansion. Current conditions suggest monitoring whether Polk County's finance and insurance wage strength (regionally the highest-paying sector) continues to outpace logistics and manufacturing, as a widening gap could reshape which business recruitment pitches land best locally.", "looking_ahead": [{"category": "Worth watching", "body": "National nonfarm payrolls added just 29,000 jobs in September with downward revisions to July and August totaling 60,000. Watch whether Iowa's relative outperformance (3.2% unemployment vs. 4.2% national) holds if national softness persists into Q4."}, {"category": "Emerging pressure point", "body": "National wage growth has slipped to 3.0% annually, now trailing 3.4% inflation \u2014 the first sustained real-wage decline since 2021. If Iowa's wage gains (statewide average weekly wage up 3.9% year-over-year) follow this national pattern, local consumer purchasing power and retail activity could feel it first."}, {"category": "Potential inflection point", "body": "Iowa's $2.1 billion unemployment insurance trust balance is enabling the lowest possible employer tax rates for 2027, a fiscal cushion that commerce leaders and policymakers can factor into 2027 business cost planning."}, {"category": "Early indicator", "body": "Manufacturing accounts for 46% of Iowa's WARN-affected workers over the past 24 months even as overall WARN filings fell 58% year-over-year. A single large notice in the Des Moines metro could move that share quickly \u2014 worth tracking against the UnityPoint Health and NFI Interactive Logistics notices already filed this year."}], "roles": [{"role": "Retail Sales Associate", "data_scope": "metro", "metro_p25": 26013.5, "metro_p50": 31200.0, "metro_p75": 34320.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 33325.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Retail Cashier", "data_scope": "metro", "metro_p25": 25742.75, "metro_p50": 31200.0, "metro_p75": 32757.5, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 31200.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Warehouse/Fulfillment Associate", "data_scope": "metro", "metro_p25": 33620.0, "metro_p50": 37440.0, "metro_p75": 41600.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 38000.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "CDL Truck Driver", "data_scope": "metro", "metro_p25": 56680.0, "metro_p50": 76960.0, "metro_p75": 88130.0, "metro_trend_direction": "down", "metro_trend_magnitude": "moderate", "national_p50": 78000.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Delivery Driver", "data_scope": "metro", "metro_p25": 27764.0, "metro_p50": 34320.0, "metro_p75": 40289.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 34344.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Construction Laborer", "data_scope": "metro", "metro_p25": 37088.0, "metro_p50": 45000.0, "metro_p75": 47085.0, "metro_trend_direction": "up", "metro_trend_magnitude": "moderate", "national_p50": 40560.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Electrician", "data_scope": "metro", "metro_p25": 57095.0, "metro_p50": 68970.0, "metro_p75": 76464.0, "metro_trend_direction": "up", "metro_trend_magnitude": "moderate", "national_p50": 71404.0, "national_trend_direction": "up", "national_trend_magnitude": "significant"}, {"role": "Manufacturing Production Worker/Assembler", "data_scope": "metro", "metro_p25": 34022.75, "metro_p50": 37648.0, "metro_p75": 39520.0, "metro_trend_direction": "down", "metro_trend_magnitude": "moderate", "national_p50": 39520.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Customer Service Representative", "data_scope": "metro", "metro_p25": 34182.0, "metro_p50": 39000.0, "metro_p75": 42595.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 39520.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Food Service Worker", "data_scope": "metro", "metro_p25": 30121.0, "metro_p50": 32601.8, "metro_p75": 33966.0, "metro_trend_direction": "up", "metro_trend_magnitude": "moderate", "national_p50": 33756.2, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Certified Nursing Assistant / Home Health Aide", "data_scope": "metro", "metro_p25": 34878.0, "metro_p50": 39520.0, "metro_p75": 43212.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 41106.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Administrative Assistant/Office Clerk", "data_scope": "metro", "metro_p25": 35600.0, "metro_p50": 43680.0, "metro_p75": 47476.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 43680.0, "national_trend_direction": "up", "national_trend_magnitude": "moderate"}, {"role": "HVAC Technician", "data_scope": "metro", "metro_p25": 60756.0, "metro_p50": 68640.0, "metro_p75": 74025.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 70720.0, "national_trend_direction": "up", "national_trend_magnitude": "moderate"}, {"role": "Registered Nurse", "data_scope": "metro", "metro_p25": 86880.0, "metro_p50": 109595.0, "metro_p75": 119984.25, "metro_trend_direction": "up", "metro_trend_magnitude": "significant", "national_p50": 102581.0, "national_trend_direction": "up", "national_trend_magnitude": "significant"}, {"role": "Software Engineer", "data_scope": "metro", "metro_p25": 112623.5, "metro_p50": 140153.0, "metro_p75": 153135.0, "metro_trend_direction": "up", "metro_trend_magnitude": "moderate", "national_p50": 153652.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Data Engineer", "data_scope": "metro", "metro_p25": 92592.0, "metro_p50": 128297.0, "metro_p75": 139992.75, "metro_trend_direction": "down", "metro_trend_magnitude": "moderate", "national_p50": 139500.0, "national_trend_direction": "up", "national_trend_magnitude": "moderate"}, {"role": "Accountant", "data_scope": "metro", "metro_p25": 59446.0, "metro_p50": 65017.6, "metro_p75": 72672.5, "metro_trend_direction": "up", "metro_trend_magnitude": "moderate", "national_p50": 72182.0, "national_trend_direction": "up", "national_trend_magnitude": "moderate"}, {"role": "Financial Analyst", "data_scope": "metro", "metro_p25": 75153.0, "metro_p50": 100510.0, "metro_p75": 118381.0, "metro_trend_direction": "up", "metro_trend_magnitude": "moderate", "national_p50": 94782.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "HR Generalist/Manager", "data_scope": "metro", "metro_p25": 53386.0, "metro_p50": 66088.0, "metro_p75": 75000.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 75000.0, "national_trend_direction": "up", "national_trend_magnitude": "significant"}, {"role": "Marketing Specialist", "data_scope": "metro", "metro_p25": 52153.0, "metro_p50": 71014.4, "metro_p75": 77589.0, "metro_trend_direction": "up", "metro_trend_magnitude": "significant", "national_p50": 62354.4, "national_trend_direction": "up", "national_trend_magnitude": "moderate"}, {"role": "Operations Manager", "data_scope": "metro", "metro_p25": 86280.75, "metro_p50": 126910.0, "metro_p75": 151727.5, "metro_trend_direction": "up", "metro_trend_magnitude": "significant", "national_p50": 85216.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Elementary/Secondary School Teacher", "data_scope": "metro", "metro_p25": 31569.0, "metro_p50": 45631.0, "metro_p75": 52027.0, "metro_trend_direction": "up", "metro_trend_magnitude": "significant", "national_p50": 56731.0, "national_trend_direction": "up", "national_trend_magnitude": "significant"}, {"role": "Account Manager", "data_scope": "metro", "metro_p25": 66874.0, "metro_p50": 93711.6, "metro_p75": 113558.25, "metro_trend_direction": "up", "metro_trend_magnitude": "significant", "national_p50": 92749.0, "national_trend_direction": "up", "national_trend_magnitude": "significant"}, {"role": "Warehouse Manager", "data_scope": "state_rollup", "metro_p25": 52500.0, "metro_p50": 60000.0, "metro_p75": 60000.0, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 75000.0, "national_trend_direction": "stable", "national_trend_magnitude": "stable"}, {"role": "Business Analyst", "data_scope": "metro", "metro_p25": 72024.0, "metro_p50": 92500.0, "metro_p75": 99766.25, "metro_trend_direction": "stable", "metro_trend_magnitude": "stable", "national_p50": 98279.0, "national_trend_direction": "up", "national_trend_magnitude": "moderate"}], "industry_snapshot": [{"sector": "Construction", "median_pay": 71594.0, "pay_trend_direction": "down", "pay_trend_magnitude": "moderate", "postings_trend_direction": "up", "postings_trend_magnitude": "moderate"}, {"sector": "Manufacturing", "median_pay": 98222.0, "pay_trend_direction": "up", "pay_trend_magnitude": "significant", "postings_trend_direction": "up", "postings_trend_magnitude": "significant"}, {"sector": "Retail Trade", "median_pay": 39287.0, "pay_trend_direction": "up", "pay_trend_magnitude": "moderate", "postings_trend_direction": "stable", "postings_trend_magnitude": "stable"}, {"sector": "Transportation, Warehousing & Utilities", "median_pay": 58000.0, "pay_trend_direction": "down", "pay_trend_magnitude": "moderate", "postings_trend_direction": "up", "postings_trend_magnitude": "moderate"}, {"sector": "Information", "median_pay": 144167.0, "pay_trend_direction": "up", "pay_trend_magnitude": "significant", "postings_trend_direction": "up", "postings_trend_magnitude": "significant"}, {"sector": "Financial Activities", "median_pay": 97656.0, "pay_trend_direction": "up", "pay_trend_magnitude": "significant", "postings_trend_direction": "up", "postings_trend_magnitude": "significant"}, {"sector": "Professional & Business Services", "median_pay": 84612.0, "pay_trend_direction": "up", "pay_trend_magnitude": "significant", "postings_trend_direction": "up", "postings_trend_magnitude": "significant"}, {"sector": "Education & Health Services", "median_pay": 75920.0, "pay_trend_direction": "up", "pay_trend_magnitude": "significant", "postings_trend_direction": "up", "postings_trend_magnitude": "moderate"}, {"sector": "Leisure & Hospitality", "median_pay": 33800.0, "pay_trend_direction": "stable", "pay_trend_magnitude": "stable", "postings_trend_direction": "up", "postings_trend_magnitude": "moderate"}, {"sector": "Government", "median_pay": 68970.0, "pay_trend_direction": "up", "pay_trend_magnitude": "significant", "postings_trend_direction": "down", "postings_trend_magnitude": "significant"}], "citations": [], "methodology": "Advertised pay from active employer job postings, not survey data. WageScape's median is calibrated to correct for spurious low-value postings: distribution analysis shows roughly the lowest 10% of raw values are erroneous entries, so the reported median is the 60th percentile of raw advertised pay.", "edition_label": "October 2026", "files": {"html": "des-moines-west-des-moines-ia-msa/metro-job-market/2026-09.html", "pdf": "des-moines-west-des-moines-ia-msa/metro-job-market/2026-09.pdf", "sources_html": "des-moines-west-des-moines-ia-msa/metro-job-market/2026-09.sources.html"}, "published_at": "2026-10-09T13:50:06.840522+00:00", "report_html_url": "https://reports.wagescape.com/archive/v1/editions/des-moines-west-des-moines-ia-msa/metro-job-market/2026-09.html", "report_pdf_url": "https://reports.wagescape.com/archive/v1/editions/des-moines-west-des-moines-ia-msa/metro-job-market/2026-09.pdf"}