Skip to content

Multi-Touch Attribution Simulation Project

This is the main page for the human-readable project record. It separates confirmed evidence from interpretation and proposals so future contributors do not have to reconstruct decisions from memory.

Documentation map

PagePurposeRead when
Baseline Dataset CreationGeneration formulas, parameter examples, regional economic inputs, confidence ratings, and commands.You need to understand or review how synthetic rows are produced.
DefinitionsShort explanations of advertising, statistics, causal reasoning, and data terms.A term is unfamiliar or ambiguous.
Repository AnalysisVerified behavior of the current and legacy generators, context directories, and schema limitations.You need to know what actually exists.
Model ConjecturesCandidate methods, examples, data requirements, limitations, and meeting questions.The team is choosing the modeling direction.
Prompt RecordCompact task goals, constraints, decisions, and completion status.You need to recover why a change was requested.

Status labels

Every important section should use one of these labels in its heading or opening callout.

LabelMeaningReader action
[Verified Repository Fact]Checked directly against a file, generated output, or passing test in this repository.Treat as current repository state until the code changes.
[External Fact]Supported by a linked primary paper or official source.Check the source date and applicability before implementation.
[Inference]Not stated directly, but supported by available evidence and explicit assumptions.Challenge the reasoning if new context appears.
[Recommendation]Proposed design choice or next step; not an implemented feature.Confirm with the data-modeling team before adoption.

[Verified Repository Fact] What exists today

  • A deterministic Python 3.11-or-newer simulation pipeline.
  • Baseline version 0.2.0 under ZheyuanWu/simulations/baseline/.
  • Source-dated Europe, Japan, and North America economic scenario configurations.
  • A finalized 9-column Amazon Marketing Cloud path table.
  • A finalized 16-column Amazon Ads daily touchpoint performance table.
  • A simulation-only ground-truth table.
  • Comma-Separated Values and SQLite storage adapters.
  • Validation and reproducibility tests.
  • No trained attribution or strategy-optimization model.

See Repository Analysis for evidence and file-level detail. See Baseline Dataset Creation for formulas, parameter meanings, sources, and confidence ratings.

[External Fact] What the industry reference suggests

Amazon's published Multi-Touch Attribution system combines randomized experiments, machine learning, and multiple attribution estimates. This is stronger than treating an observational Markov removal effect as causal truth.

Source

Amazon Ads Multi-Touch Attribution: https://arxiv.org/abs/2508.08209

[Inference] Current project interpretation

The two Amazon-like tables are best treated as observational model inputs. They can test parsing, conservation, baseline allocations, Shapley values, and predictive models.

They cannot by themselves prove advertising incrementality. The synthetic truth table allows honest simulator tests, but synthetic success does not establish real-world causal validity.

[Recommendation] Decisions requiring team review

The immediate discussion should determine:

  1. whether the goal is attribution reporting, conversion prediction, causal lift, or budget optimization;
  2. whether timestamps, interaction types, non-converting paths, and experiments can be obtained;
  3. which baseline every advanced model must beat;
  4. how model ownership will survive team turnover.

Candidate methods and concrete examples are in Model Conjectures.

Project rules that protect continuity

  • Define every specialized term or link it to Definitions.
  • Put facts, external evidence, inferences, and recommendations under explicit status labels.
  • Keep model proposals in CONJECTURE.md until the team accepts them.
  • Record rejected ideas and the reason for rejection instead of silently deleting them.
  • Never represent synthetic data as Amazon-provided data.
  • Never use simulation ground truth as a training feature.
  • Add source dates when an external feature or service may change.
  • Add a compact task summary to Prompt Record when each task ends.

Context and recording log

Use this section as an index when adding meeting notes, transcripts, or recordings. Store sensitive material only in a location approved by the repository owner.

Suggested entry template
markdown
### YYYY-MM-DD — Topic

- Participants:
- Source or recording:
- Status label:
- New verified facts:
- Assumptions corrected:
- Decisions made:
- Open questions:
- Files or models affected:

No recordings are currently stored under ZheyuanWu/docs/.

Running this documentation site

The site root is this docs directory. Both scripts derive this directory from their own location, so they can be launched from any working directory without an absolute repository path.

Prerequisite

Install the current Node.js Long-Term Support release from https://nodejs.org/. Node.js normally includes the npm package manager. The scripts check the runtime before installing or starting anything and provide a corrective message when a requirement is missing.

Windows:

bat
run-doc-site.bat
run-doc-site.bat build
run-doc-site.bat preview
run-doc-site.bat dev pnpm

Linux or macOS:

sh
sh run-doc-site.sh
sh run-doc-site.sh build
sh run-doc-site.sh preview
sh run-doc-site.sh dev pnpm

With no arguments, each launcher:

  1. resolves and enters its own directory;
  2. checks for Node.js 18 or newer;
  3. selects npm when available, otherwise pnpm;
  4. installs missing dependencies from the project definition;
  5. runs npm run dev or the pnpm equivalent.

The build mode creates the static site, and preview serves the most recent production build. To choose pnpm explicitly, put pnpm after the mode or use it as the only argument for development mode. The DOCS_PACKAGE_MANAGER environment variable can set npm or pnpm as the local default. Run either script with --help for the complete syntax.

Keep facts, inferences, and recommendations distinct.