Skip to content

Module 2 — Platform

Hoda Rezvanjoo edited this page Jun 1, 2026 · 1 revision

Selection and Priority Ranks

File: modules/module2.py

Module 2 records, for each of the 12 built-in platforms (plus any custom platforms defined in core/kpi_config.py), whether it's selected and, within the active objectives, its priority 1 and optional priority 2. The priority structure drives system goal weights when no goal values are set in Module 1.

Platform codes

Code Display
fb Facebook
ig Instagram
li LinkedIn
yt YouTube
tt TikTok
pt Pinterest
tw X (Twitter) — code kept tw for back-compat
sn Snapchat
rd Reddit
go_search Google Search
go_display Google Display Network
go_pmax Google Performance Max

Why Google is three platforms

Search, Display, and PMax have lead-gen productivities that differ by an order of magnitude. Conflating them into one "Google" entry would hide the most important channel decision a marketer using this tool needs to make — so they're kept distinct.

Active platforms vs selected

active_platforms is the set of selected platforms that have at least one priority slot filled. This is the list Module 3 onward iterates over. A platform "selected but unprioritised" surfaces a validation error rather than being silently ignored — explicit beats implicit.

Clone this wiki locally