Five writers. Twenty-one months.

Writer Tone StudyFinal Report

A systematic comparison of Tyler Cowen, Robin Hanson, Bryan Caplan, Paul Krugman, and Alex Tabarrok.

January 1, 2025 – September 30, 2026Report snapshot: October 11, 2026
3,873Public written posts
1,000Contextually coded posts
5Writers compared
7Original charts
On this page

The completed study checks 3,873 eligible public written posts and contextually codes a probability sample of 1,000, with 200 per writer. It covers January 1, 2025 through September 30, 2026. The first-pass contextual results support more joy and warmth in Caplan than Cowen, and more anger and expressed anxiety in Krugman than the equal average of the other four writers. These are properties of the checked prose under a defined coding rubric, not measurements of private feelings or personality.

The main tone patterns survive restricting attention to essays and book reviews and appear in both calendar-year subsets. Political group counts are much less secure: exact target extraction differs substantially across automated readings. They are retained as exploratory evidence rather than an ideology ranking. No AI-authorship detection or human ground-truth review was performed.

Motivation and what the original post establishes

Bryan Caplan's October 8 post reports a qualitative ChatGPT comparison and uses it to discuss the writers' emotional styles. It is a useful source of hypotheses, but its reported conversation does not supply a reproducible corpus inventory, probability sample, frozen numerical rubric or independently checked label matrix. This study supplies those elements and treats the proposed comparisons as hypotheses. The motivating post falls after the study cutoff and is excluded from the measured corpus.

What content was checked

WriterParsed unique pagesEligible written postsContextual frameMain sampleHeuristic authored words
Tyler Cowen265925472530200219407
Robin Hanson226224207200128615
Bryan Caplan310289272200187144
Paul Krugman728456440200381980
Alex Tabarrok36435734020082111

Total: 4,287 parsed unique pages, 3,873 eligible posts and 999,257 heuristic authored-word tokens. Cowen and Tabarrok are the bylined writers on Marginal Revolution; Hanson is from Overcoming Bias, Caplan from Bet On It, and Krugman from his Substack. Cross-post duplicates count once per writer. The corpus audit found no raw-response hash failures or exact duplicate input-text groups.

The inventories use archives, sitemaps, publication indexes and cached verified full texts. Marginal Revolution's monthly archives supplied complete entries with date and byline. RSS alone was not treated as a complete historical inventory. Public full written bodies were required; search snippets and reader comments were never scored. Guests, joint authorship, interviews, transcripts, audio/video posts, outside-window pages and unverifiable full bodies were excluded. Written announcements without transcripts, short posts, link roundups and book reviews remain eligible and separately tagged. A page can have multiple exclusion reasons; the saved priority partition makes mutually exclusive accounting possible. Format tags are deterministic heuristics: recognized link-roundup titles take priority; short written media announcements follow; prose below 150 whitespace tokens is short; book/review title or category cues identify book reviews; remaining prose is essay. These tags are useful controls, not independently verified genres.

Krugman's annual-index ledger has 738 entries: 456 included, 271 known excluded and 11 unresolved. These are index-entry counts, distinct from the 728 parsed unique pages. In the mutually exclusive parsed-page partition, 83 entries fail full-body verification after earlier exclusions; this does not establish that all 83 are paywalled essays. Unresolved entries and unavailable bodies may differ systematically from available prose. The target is the retrieved eligible corpus, not all writing these people produced.

Publication timestamps use New York dates; a source supplying only a calendar date retains that date without inventing a time. Bodies were retrieved in October 2026. They are not reconstructed September 30 versions. Source responses, extraction outcomes, URLs, dates, hashes, exclusions and access failures are retained. Conservative request pacing, caching and checkpointing were used; access blocks were treated as pauses rather than invitations to rotate identities. Complete collection without rate limits was never guaranteed.

Corpus Coverage
Parsed-page and eligible-post coverage. See the report for distinct Krugman annual-index accounting and unresolved entries.
Open full-size chart

The broad lexical analysis

VADER 3.3.2 and NRC Emotion Lexicon 0.92 cover all 3,873 eligible posts. The primary extraction retains estimated own prose, including identifiable self quotation, and removes recognized third-party quotations and boilerplate. Separate no-blockquote and full-context variants expose attribution sensitivity; titles are scored separately. This heuristic can miss inline quotations or remove useful context. Images are not interpreted and some embedded markup tokens can remain.

VADER sentence scores are averaged within each post, then posts receive equal weight. Positive and negative columns are valence-adjusted signals on a 0–1 scale, not percentages of words. Compound is a sentence-level net signal averaged by post. NRC counts binary emotion-associated vocabulary per 1,000 ASCII English/apostrophe tokens, without stemming; associations can overlap and do not identify felt emotions. Longer-post weighting uses whitespace-token authored-word counts; NRC uses its distinct lexical-token denominator. Distributions, strong-sentiment sentence fractions, title/body scores, format subsets and monthly summaries are saved.

WriterPositive signalNegative signalCompound
Tyler Cowen0.0730.0220.088
Robin Hanson0.1150.0610.157
Bryan Caplan0.1330.0650.106
Paul Krugman0.0830.086-0.014
Alex Tabarrok0.1140.0540.124

Caplan has the largest positive lexical signal; Krugman the largest negative signal. Hanson has the highest net compound mean. Cowen's lower net score than Caplan in the all-format corpus reverses in essays/book reviews: Cowen 0.126 versus Caplan 0.077. This illustrates why a universal happiest-writer league table depends on which output and measure count.

Because 75 calibration and nine pilot posts were excluded from the contextual frame, its exact population is 3,789 posts. The corresponding lexical baseline is also saved:

WriterPositive signalNegative signalCompound
Tyler Cowen0.0730.0220.089
Robin Hanson0.1130.0610.154
Bryan Caplan0.1310.0650.105
Paul Krugman0.0830.086-0.014
Alex Tabarrok0.1160.0540.126

The same-post table links all 1,000 sampled posts to lexical baselines and contextual ratings. A full cross-product of seven baselines and seven contextual dimensions, pooled and per writer, gives exploratory unweighted sample Spearman associations. It was added after seeing first-pass aggregates and supplies no p-values, population correlations or accuracy claims. Different measures should not be equated solely because they correlate.

Lexical Positive Negative
VADER sentence signals averaged equally over posts. Values are not percentages of words or measures of private feelings.
Open full-size chart
Format Sensitivity
Net lexical sentiment changes with format. These are descriptive retrieved-corpus means, without sampling intervals.
Open full-size chart

Contextual coding and sampling

The main sample contains 200 posts per writer, selected within quarter × format strata using seed 20260930. Non-census strata retain at least two observations. Inverse inclusion probabilities weight estimates back to the frozen retrievable frame. The primary estimand gives each population post equal weight; authored-word weighting is secondary. Pilot and calibration posts never re-enter the main sample.

Seven dimensions receive independent 0–3 ratings: absent, mild/isolated, clear/substantial and strong/central. Joy, appreciation and interpersonal warmth differ from favorable substantive evaluation. Anger/contempt differs from unfavorable evaluation; expressed anxious affect differs from describing harm. Positive and negative dimensions can coexist. Arithmetic means are operational summaries of ordinal categories, not calibrated psychological distances.

The frozen v0.4 rubric also records topic, source voice, sarcasm, ordinary and conditional forecasts, risk, targets and issue-specific political positions. Future outlook has six exclusive categories: positive, negative, mixed, uncertain, unvalenced and absent. A hypothetical threat or administrative plan does not automatically count as a negative forecast. Sarcasm requires contextual evidence of ironic meaning; mockery, criticism and hyperbole alone are insufficient. Ambiguity remains a label, not a forced resolution.

Bylines, site branding and author profiles were withheld from annotation inputs, and the motivating rankings were not supplied. Style, topics or names in the text can still identify an author. Each output retains paragraph evidence, short interpretations, source/input hashes and separate uncertainty flags. Validation checks schema, allowed categories, exact excerpt locations and links; it does not prove semantic correctness.

Main results

WriterJoy / enthusiasmAppreciationWarmthAnger / contemptExpressed anxietyFavorable evaluationUnfavorable evaluation
Tyler Cowen0.0970.2460.0100.0550.0100.8420.481
Robin Hanson0.0200.1100.0350.1150.1601.3361.706
Bryan Caplan0.5110.6990.6410.8990.0591.6571.496
Paul Krugman0.1260.2670.0562.2490.3531.3162.690
Alex Tabarrok0.1860.4320.0490.3630.0611.7691.371

Caplan has appreciably more warmth and joy than Cowen, yet also substantially more anger and criticism. Hanson has little overt joyful or angry affect while frequently making unfavorable substantive evaluations. Tabarrok's favorable-evaluation mean is large even though his joyful affect is much less frequent than Caplan's. These distinctions show what a single positive-minus-negative index obscures.

The four registered primary contrasts use an equal author average for Krugman's comparator, not a pooled corpus dominated by Cowen's publication volume:

Prespecified contrastDifference on 0–3 scale95% sampling intervalHolm adjusted p
Caplan minus Cowen: joy0.414[0.329, 0.499]7.8e-13
Caplan minus Cowen: warmth0.631[0.575, 0.687]2.2e-45
Krugman minus equal average of other four: anger1.891[1.802, 1.980]2.6e-93
Krugman minus equal average of other four: anxiety0.280[0.200, 0.360]7.3e-11

All four first-pass differences are positive, and their tests remain significant after Holm correction across the four tests. The small p-values describe sampling uncertainty conditional on the labels; they do not validate the model or compensate for unavailable content.

WriterRisk mentionedAnxious affectNegative forecastSarcasm present
Tyler Cowen10.5%0.5%0.5%0.5%
Robin Hanson58.0%11.0%20.0%1.5%
Bryan Caplan26.8%3.9%6.5%4.1%
Paul Krugman82.4%20.1%49.5%39.0%
Alex Tabarrok29.3%3.6%5.8%4.9%

Risk discussion greatly exceeds expressed anxious affect. Krugman mentions risk in 82.4% of weighted posts, while 20.1% express anxious affect; Hanson is 58.0% versus 11.0%. Most writers' posts contain no qualifying ordinary forecast. Krugman's negative outlook is substantially more prevalent, but this is about the future claims in those posts, not an enduring worldview. Sarcasm prevalence is exploratory and particularly sensitive to interpretation.

The archive contains all-format, essay/book-review, 2025 and 2026 estimates, plus authored-word-weighted intensities. The main contrast directions persist in the essay/book-review and year subsets and with authored-word weighting. The word-weighted point differences are 0.327 for Caplan–Cowen joy, 0.581 for warmth, 1.944 for Krugman–other-four anger and 0.307 for anxiety. Topic × format × quarter adjustment required at least five sampled posts per writer in a cell. No cell met that strict five-writer criterion, so no topic-adjusted causal or residual-style comparison is reported. Publication mix and chosen topics remain possible explanations. A post-aggregate descriptive check omits each of the 21 publication months in turn, retains the original inclusion weights and recomputes available-score denominators. All four contrast point differences stay positive in both the first-pass and source-review-proposal versions. First-pass ranges are 0.390–0.448 for Caplan–Cowen joy, 0.602–0.647 for warmth, 1.845–1.933 for Krugman–other-four anger and 0.249–0.304 for anxiety. These are omission ranges, not confidence intervals; the check assesses single-month dependence and does not estimate event-cluster uncertainty.

Contextual Tone
Weighted first-pass 0–3 intensities. Bars are 95% sampling intervals conditional on model labels and the frozen retrieved frame; they exclude measurement and access error.
Open full-size chart
Risk Anxiety Outlook
Risk, anxious affect and ordinary future outlook are separate constructs. Sampling bars hold labels fixed; forecast categories are mutually exclusive.
Open full-size chart

Model settings, consistency and source review

The requested main model was GPT-6.1 Sol with medium reasoning. Initial 60 main posts used fresh five-post contexts; the remaining 940 reused five existing Sol contexts to make the work resumable. The 150-post blind second reading used a separate automated reviewer context, with 35 initial fresh-context posts and 115 in a persistent context. Backend identity is reported only where observable; the resumed reviewer is not a verified stronger or different model. Neither stage was human review. Fresh versus persistent descriptive summaries are saved, but context mode is confounded with order and source mix and is not a randomized comparison.

The early Luna/Sol comparison used 15 texts, including nine real and six constructed examples, under prompt v0.2. Sol met 12 of 12 diagnostic expectations and Luna 11 of 12. That small, prompt-dependent exercise supported choosing Sol; it is not an accuracy estimate for the final rubric. The final v0.4 challenge set met 39 of 40 designed checks, likewise a diagnostic rather than 97.5% real-post accuracy.

Thirty randomly selected main posts per writer were coded blind a second time. Ten per writer were also repeated with the requested Sol settings in an existing context with no prior exposure to those sources. The frozen selections predate main labels.

DimensionBlind exact (150)Blind within oneBlind weighted kappaRepeat exact (50)Repeat presence agreement
Joy / enthusiasm91.3%98.7%0.71596.0%83.3%
Appreciation84.7%100.0%0.67488.0%90.3%
Warmth91.3%100.0%0.77894.0%82.4%
Anger / contempt86.7%100.0%0.87386.0%94.7%
Expressed anxiety96.0%99.3%0.76290.0%50.0%
Favorable evaluation75.3%100.0%0.77180.0%96.2%
Unfavorable evaluation88.0%100.0%0.91082.0%100.0%

Blind exact agreement spans 75.3–96.0%; almost all differences are at most one point. Shared zero scores inflate exact agreement on rare emotions. Expressed anxiety illustrates the limitation: repeat exact agreement is 90%, while agreement on its presence is only 50% in the small repeat set. Complete confusion matrices, absolute differences, positive/negative presence agreement and undefined-kappa handling are saved. Blind exact agreement is 86% for future outlook, 94% for sarcasm, 92% for risk and 82.7% for primary topic. These are consistency results, not correctness or independent error bounds.

Selection rules for material review were recorded before full main aggregates. They select 65 cases containing material attribution/target ambiguity or specified disagreements in the random blind audit, without choosing cases by desired author ranking. The automated reviewer reads source first, then sees first and blind labels. For review batch AB015, redisplay overwrote the first label-display timestamp; the retained timestamp means last display. Source-read timestamps, hashes and immutable outputs remain intact. Dispositions: {"correction_proposed": 20, "supported": 2, "unresolved": 43}. There are 62 proposed field changes; whole-list target/evidence replacements can contain several individual edits. Candidate copies pass the original mechanical validator. Fifty-seven cases retain residual ambiguity, including 14 of the 20 correction proposals. Supported and unresolved cases do not become forced corrections.

The primary results preserve first-pass scores. Applying the proposed corrections only as a separate sensitivity changes mean intensities by:

WriterJoy / enthusiasmAppreciationWarmthAnger / contemptExpressed anxietyFavorable evaluationUnfavorable evaluation
Tyler Cowen+0.000+0.000+0.000+0.000+0.000+0.000+0.000
Robin Hanson+0.000+0.000+0.000+0.000-0.010+0.000+0.000
Bryan Caplan-0.010+0.000+0.000+0.000+0.000+0.000+0.000
Paul Krugman+0.005+0.000+0.000+0.000+0.000+0.000+0.000
Alex Tabarrok+0.005+0.000+0.000+0.000+0.000+0.000+0.000

All four registered contrast point estimates remain positive in this proposal sensitivity. No new significance test is used to turn these proposals into ground truth. Changes to context prevalence, in percentage points, are:

WriterRisk mentionedAnxious affectNegative forecastSarcasm present
Tyler Cowen+0.0 pp+0.0 pp+0.0 pp+0.0 pp
Robin Hanson+0.0 pp-0.5 pp-0.5 pp+0.0 pp
Bryan Caplan+0.5 pp+0.0 pp-0.5 pp+0.0 pp
Paul Krugman+0.0 pp+0.0 pp-1.0 pp+0.0 pp
Alex Tabarrok+0.5 pp+0.0 pp+0.0 pp+0.0 pp

These proposals are a separate automated reviewer's judgments, not adjudicated truth. Raw files remain immutable; separately logged schema/evidence/attribution repairs are retained. Root repairs did not change original intensity values, outlook, risk, sarcasm or target praise/criticism decisions. The workbook shows first, blind, repeated and candidate scores, evidence and blank fields for later human review.

Coding Consistency
Automated consistency on 150 blind readings and 50 repeats, not human-ground-truth accuracy. Shared zeros can inflate exact agreement.
Open full-size chart

Praise, criticism and political groups

The sample contains 11,422 target/aspect records and 527 explicit issue-stance records. Human groups, people, institutions, policies, works and other entities remain distinct. Frozen exact typed aliases merge only specified names; country, qualifiers and subgroups remain separate. Current author or endorsed mixed voice can support praise/criticism; third-party and historical self quotation remain visible without automatically counting as current endorsement. Praise and criticism are independent and each entity counts once per post. Rates count affirmative current praise/criticism labels; unresolved stance has a separate indicator and is not evidence of neutral stance. Attention includes neutral discussion. Conditional evaluation rates are suppressed below ten observed mentions.

Seven political-reference families are saved by country and target type. Qualified groups can overlap, so family counts are not additive. Praise of a politician or endorsement of a policy does not transfer to a political camp. The broad lexical reference screen separately checks all eligible bodies and titles, excluding several obvious homonyms. It measures literal vocabulary, not detected groups or stance. The 150-post random-audit cross-tab compares vocabulary and both contextual readings without treating either as ground truth.

In the first-pass country-unspecified human-group panel, Krugman's Republican/MAGA criticism appears in 41 of 200 sampled posts, weighted to 20.6% of posts; attention is 53 sampled posts, weighted to 26.7%. This panel does not pool explicitly US-coded groups, institutions or individual politicians. Many other cells contain fewer than ten observations. No exact human group meets the figure rule of at least ten mentions for two writers, so the planned cross-writer frequent-exact-group figure is omitted.

Target detection is the weakest measurement layer. Across the random blind audit, strict exact matched group/institution identities have micro Jaccard 0.166 and mean nonempty post Jaccard 0.202. There are 354 matched entity/post pairs, 872 first-only and 902 second-only. Some differences reflect paraphrase, type/country/scope distinctions or missed attention. Among exact matches, praise/criticism agreements are high, but conditioning on matches hides detection uncertainty. These values are not recall or accuracy. Counts describe observable coded patterns and justify further inspection; they do not establish an overall liberal/conservative score.

Political Group Attention Stance
Exploratory first-pass group-family rates with country unspecified. n is the unweighted indicator count; families overlap. Exact target detection is unstable and zero observed counts do not establish absence.
Open full-size chart

Uncertainty and computational accounting

Mean and prevalence intervals use stratified SRS ratio linearization, finite-population correction and Satterthwaite t critical values. Missing scores have metric-specific denominators and are not zeros. Zero estimated variance outside a census triggers conservative bounded-score finite-population intervals. A pre-completion statistical amendment also requires conservative component bounds and withholds contrast p-values if a primary component has that warning. The four actual primary contrasts do not trigger that exception. Holm correction covers the four registered tests; other comparisons remain exploratory.

The intervals hold retrieved bodies and model labels fixed. They exclude access bias, quote-extraction mistakes, systematic model error, context carryover and correlated mistakes between automated readings. Consistency checks and proposal sensitivities address part of those concerns without placing them inside the sampling interval. No human gold standard establishes absolute accuracy.

Approximate content sizes are retained for resumability and budgeting:

StageSaved posts / casesApproximate visible input tokensApproximate serialized output tokens
calibration75112,208311,523
challenge4021,70614,894
main10001,711,5901,327,328
review150245,172217,923
repeatability5085,81074,154
material_review65433,84817,202

These are characters divided by four, not billed-token counts. They exclude hidden reasoning, context reuse, tools, retries, repairs and dispatch overhead. The exact subscription quota, consumed allowance and reset time were not exposed. No API purchase, upgrade or guaranteed $20-plan capacity is claimed.

Deliverables and how to inspect or reproduce the work

The editable report and unpublished Substack draft accompany the eight-tab Writer Tone Review workbook, seven PNG/SVG publication figures and the complete research archive. The workbook has 1,000 sample rows, 7,000 dimension rows, 65 source-review records, target rows, all parsed corpus rows and 11 unresolved-index entries. Amber human fields are blank. Saved statistics are a snapshot; entering a human correction does not silently refresh the results.

The archive retains raw HTML/responses, parsed bodies, inventories, eligibility partitions, inaccessible-entry ledger, dates and source hashes; frozen sampling maps/probabilities/weights; prompt versions and hashes; immutable first outputs; independent/repeat/source review; repair reasons; complete result CSV/JSON tables; calculation checks; code and final figures. The licensed NRC lexicon is not redistributed. Source ledgers contain the actual per-post URLs and content checks. The resumption instructions retain interrupted-stage history and relocation support; finished batches do not need rerunning.

Main analyses are generated by analysis_core.py, analyze_targets.py, screen_political_references.py, compare_lexical_context.py and summarize_context_modes.py. Source-review sensitivity is generated by build_review_sensitivity.py; check_month_dependence.py supplies the descriptive month-omission check. Workbook and figure scripts consume the saved results. Thirteen calculation checks passed after the final statistical amendment; all main, blind, repeat and source-review batches are mechanically validated. Workbook zero/blank delta formulas, first/middle/last formula probes and formula-error scans are checked. Charts and workbook preview images receive visual inspection. Native Page rendering is not independently previewed in this environment.

Method references: VADER paper, VADER implementation, NRC resource, and sampling-without-replacement concentration results. The conservative ratio construction is this study's derivation from bounded-mean concentration, not a formula claimed verbatim from that paper.

Reading edition

This website preserves the full report text and all seven original charts. The download includes the report in Markdown and the chart images.

Download report and charts Back to top