Advertising the Future

A computational dataset of 20th-century American magazine advertisements

The examples below illustrate how the computational pipeline processes magazine advertisements. Each example is shown with interpretive commentary explaining the classification, OCR extraction, and metadata inference steps.

The full dataset (200,000+ ads) is browsable in the Dataset Explorer. All original scans are available on the Internet Archive.

Example 1: Full-page product advertisement

Chevrolet · Time, January 12, 1925, p. 21 · View on Internet Archive

This example demonstrates the pipeline's page classification step. The CLIP-based classifier assigns this page a high ad probability (>0.99), correctly distinguishing it from editorial content. The Surya OCR engine extracts text regions that reveal the product name, tagline, and body copy. A full-page ad like this one produces a single row in the dataset with ad_type = "full".

Example 2: Two-page spread advertisement

IBM · Time, April 13, 1953, pp. 44–45 · View on Internet Archive

Two-page spread ads span consecutive scans. The spread classifier (a difference-head architecture comparing CLIP embeddings of adjacent pages) identifies these pairs with F1 > 0.94. In the ad-level dataset, spreads are consolidated into a single row (ad_type = "spread") with the partner page recorded, preventing double-counting in aggregate statistics. OCR text and detected objects from both pages are merged.

Example 3: Mixed page (partial advertisement)

Marlboro · Esquire, July 1968, p. 32 · View on Internet Archive

Many magazine pages contain both editorial content and smaller advertisements. The page classifier labels these as "mixed" (label 2). The YOLO-based ad localization model then draws bounding boxes around individual ad regions within the page. Each bounding box becomes its own row in the dataset (ad_type = "mixed") with coordinates stored in the bbox field. OCR text is spatially filtered to include only text lines that overlap with each bounding box, so each partial ad gets its own distinct text rather than the full page's OCR.