{
  "slug": "transaction-revenue",
  "name": "Transaction revenue",
  "aliases": [
    "Revenue"
  ],
  "definition": "The money recorded against completed transactions by your web-analytics source in the period.",
  "category": "Web analytics and conversions",
  "type": "monetary",
  "unit": "revenue in the currency configured in your analytics property",
  "direction": "higher-better",
  "verification": "verified",
  "calculation": "A sum of the transaction-revenue column supplied by the analytics export, with nulls read as zero.",
  "aggregation": "Sums across rows.",
  "grain": "One number per date range and medium, or one row per breakdown value.",
  "dimensions": [
    "country",
    "device",
    "page",
    "keyword",
    "source_medium",
    "intent",
    "category"
  ],
  "requiredFilters": [
    "date_range"
  ],
  "sources": [
    "web-analytics"
  ],
  "reports": [
    "ai-referral-traffic-report",
    "monthly-executive-search-report",
    "search-to-revenue-report"
  ],
  "skills": [
    "search-to-revenue",
    "monthly-exec-review"
  ],
  "verbs": [
    "conversions_overview",
    "web_analytics_overview"
  ],
  "rungs": [
    "R5"
  ],
  "levers": [],
  "questions": [
    "How much revenue did organic search produce?",
    "Which pages make money?"
  ],
  "interpretation": "The rung the business actually asks about. It is a referral-based read: the analytics source attributes it to the channel that brought the visit, and no claim beyond that attribution is supportable without an integration.",
  "caveats": [
    "Attribution is whatever your analytics property is configured to do; the model is not visible here.",
    "Revenue and total value are separate columns and are never added together.",
    "No deterministic cross-domain or AI-influence revenue attribution is available, those claims need an integration that does not exist yet.",
    "Whole-domain only today; the conversions tool's default scope is All traffic sources with the search type pinned to web, not organic."
  ],
  "freshness": "loads nightly, a same-day question gets yesterday's number, labelled as yesterday's.",
  "failureModes": [
    "Attributing revenue to a keyword, organic has no query-level conversion data anywhere.",
    "Adding revenue to total value."
  ],
  "notSameAs": [
    {
      "slug": "total-value",
      "why": "Revenue is money from recorded transactions; total value is the analytics configuration's assigned value for events, which can include non-purchase goals."
    }
  ],
  "related": [
    "transactions",
    "total-value",
    "conversions-count"
  ],
  "workflows": [],
  "lastVerified": "2026-08-04"
}