{"openapi":"3.1.0","info":{"title":"HowToMakeMoneyOnSnapchat.com API","version":"1.0.0","summary":"Verified, sourced Snapchat creator-monetization rules and deterministic eligibility, gap, and growth-pace calculations for AI agents.","description":"Independent; not affiliated with, endorsed by, or sponsored by Snap Inc.\n\n**Independent third party. Not affiliated with, endorsed by, or sponsored by Snap Inc. Snapchat is a trademark of Snap Inc.**\n\nEvery response keeps three things apart:\n- FACT: what Snap's official pages say, with source URL, `verified_at`, `effective_date` and `status` (current | historical | unverified).\n- CALCULATION: math we did, with the inputs and formula shown.\n- RECOMMENDATION: our suggestion, labeled as ours, with its assumptions and risks.\n\ncheck_eligibility never returns an \"eligible\" verdict. It returns `published_criteria_status` (meets_published_criteria | does_not_meet_published_criteria | unknown) together with a fixed `disclaimer` saying that invitation to the Monetization Program is at Snap's discretion.\n\nEntry vs ongoing: by default the calculation tools evaluate only entry (invitation) requirements. Ongoing requirements for creators already in the program, such as 100 hours of Spotlight view time over 28 days to qualify for maximum Creator Rewards, are reported in a separate section, and only when `already_enrolled: true`.\n\nScope: by default the tools serve the MVP programs: the Unified Monetization Program, its payouts and tax, Snap Star as a prerequisite, content and recommendation policy, and brand partnerships as FACTs. Out-of-scope programs (Lens Creator Rewards, Creator Subscriptions) come back only with `include_out_of_scope: true`.\n\nData minimization: we never accept or store a creator's age or birthdate. The age requirement is a yes/no/unknown input, `meets_age_requirement`.\n\nWe never return a made-up \"score\". We never look up a creator's metrics: every metric comes from the caller, because Snap has no public analytics for arbitrary usernames. Rules we could not verify from an official Snap source come back with `status: \"unverified\"`.\n\nAccess: the five tools can be called anonymously with no signup and no API key. A free API key, issued by POST /v1/keys and shown once, raises the rate limit. No email or other personal data is collected. Send the key as `Authorization: Bearer` or `X-API-Key`. A key that does not match returns HTTP 401 `INVALID_API_KEY` and says anonymous access is available. Omitting the key keeps anonymous access. Every response carries rate-limit headers (IETF RateLimit header fields). If you go over the limit you get HTTP 429 with `Retry-After`. Limits live in Worker vars, not in handler code.\n\nThe same five tools, with the same input and output schemas, are also exposed as a remote MCP server over streamable HTTP at `https://howtomakemoneyonsnapchat.com/mcp`. The server is read-only. Anonymous access works. A free key uses the same headers. Its instructions include: Independent; not affiliated with, endorsed by, or sponsored by Snap Inc.\n\nUnknown tool names return 404 `NOT_FOUND`. `/v2` returns `UNSUPPORTED_API_VERSION`. Calculation tools accept POST only (`METHOD_NOT_ALLOWED` otherwise). FACT tools also have cacheable GET aliases. Every error body uses the closed `error.code` enum, with `fix` and `docs_url`.\n\nAnonymous limits, overridable by Worker vars and not hard-coded in handlers: 60 requests per 60 seconds and 5,000 requests per day, keyed by a hash of IP and User-Agent. Free-key limits, also overridable: 600 requests per 60 seconds and 50,000 requests per day, keyed by key id. Request bodies over 16,384 bytes return `PAYLOAD_TOO_LARGE`. This document is served at `/openapi.json`. Canonical host is https://howtomakemoneyonsnapchat.com. www.howtomakemoneyonsnapchat.com redirects there with HTTP 301. The workers.dev staging host is not redirected.\n","contact":{"name":"HowToMakeMoneyOnSnapchat.com","url":"https://howtomakemoneyonsnapchat.com"},"license":{"name":"Proprietary (API); schemas CC BY 4.0 (proposed, pending Ryan)","identifier":"LicenseRef-Proprietary"}},"jsonSchemaDialect":"https://json-schema.org/draft/2020-12/schema","servers":[{"url":"https://howtomakemoneyonsnapchat.com","description":"Canonical production host. www.howtomakemoneyonsnapchat.com 301-redirects here with the same path and query. The workers.dev staging host is not redirected."}],"security":[{},{"bearerAuth":[]},{"apiKeyHeader":[]}],"tags":[{"name":"facts","description":"FACT tools. Official Snap rules with sources."},{"name":"calculations","description":"CALCULATION tools. Deterministic math on caller-supplied metrics."},{"name":"meta","description":"Health, this OpenAPI document, and the remote MCP endpoint."}],"paths":{"/v1/tools/get_monetization_requirements":{"get":{"tags":["facts"],"operationId":"get_monetization_requirements_tool_get","summary":"Cacheable GET alias of get_monetization_requirements on the tool path.","parameters":[{"$ref":"#/components/parameters/RequirementsProgram"},{"$ref":"#/components/parameters/RequirementsCountry"},{"$ref":"#/components/parameters/IncludeUnverified"},{"$ref":"#/components/parameters/IncludeHistorical"},{"$ref":"#/components/parameters/IncludeOutOfScope"},{"$ref":"#/components/parameters/RequirementPhase"},{"$ref":"#/components/parameters/AsOf"}],"responses":{"200":{"$ref":"#/components/responses/GetMonetizationRequirementsOK"},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"405":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Error"}}},"post":{"tags":["facts"],"operationId":"get_monetization_requirements","summary":"Current Snapchat monetization requirements per program, each with source and verification date.","description":"Use this to get the rules themselves. To compare a creator's numbers against them, use check_eligibility or calculate_gap.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/get_monetization_requirements.input.schema"}}}},"responses":{"200":{"$ref":"#/components/responses/GetMonetizationRequirementsOK"},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"413":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/v1/requirements":{"get":{"tags":["facts"],"operationId":"get_monetization_requirements_get","summary":"Cacheable GET alias of get_monetization_requirements.","parameters":[{"$ref":"#/components/parameters/RequirementsProgram"},{"$ref":"#/components/parameters/RequirementsCountry"},{"$ref":"#/components/parameters/IncludeUnverified"},{"$ref":"#/components/parameters/IncludeHistorical"},{"$ref":"#/components/parameters/IncludeOutOfScope"},{"$ref":"#/components/parameters/RequirementPhase"},{"$ref":"#/components/parameters/AsOf"}],"responses":{"200":{"$ref":"#/components/responses/GetMonetizationRequirementsOK"},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Error"}}}},"/v1/tools/get_rule_changes":{"get":{"tags":["facts"],"operationId":"get_rule_changes_tool_get","summary":"Cacheable GET alias of get_rule_changes on the tool path.","parameters":[{"$ref":"#/components/parameters/Since"},{"$ref":"#/components/parameters/Until"},{"$ref":"#/components/parameters/ChangesProgram"},{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Cursor"}],"responses":{"200":{"$ref":"#/components/responses/GetRuleChangesOK"},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"405":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Error"}}},"post":{"tags":["facts"],"operationId":"get_rule_changes","summary":"Changes to Snap monetization rules since a date (previous value, new value, source, detected date).","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/get_rule_changes.input.schema"}}}},"responses":{"200":{"$ref":"#/components/responses/GetRuleChangesOK"},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"413":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/v1/rule-changes":{"get":{"tags":["facts"],"operationId":"get_rule_changes_get","summary":"Cacheable GET alias of get_rule_changes (also basis for the RSS/JSON feed).","parameters":[{"$ref":"#/components/parameters/Since"},{"$ref":"#/components/parameters/Until"},{"$ref":"#/components/parameters/ChangesProgram"},{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Cursor"}],"responses":{"200":{"$ref":"#/components/responses/GetRuleChangesOK"},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Error"}}}},"/v1/tools/check_eligibility":{"post":{"tags":["calculations"],"operationId":"check_eligibility","summary":"Creator metrics in; pass/fail for each published entry requirement, plus unknowns and requirements that need the creator's confirmation. The result is meets_published_criteria, does_not_meet_published_criteria or unknown, never \"eligible\".","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/check_eligibility.input.schema"}}}},"responses":{"200":{"description":"Eligibility evaluation (CALCULATION) with the FACTs it used.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/check_eligibility.output.schema"},"example":{"tool":"check_eligibility","api_version":"v1","notice":"HowToMakeMoneyOnSnapchat.com is an independent third party and is not affiliated with, endorsed by, or sponsored by Snap Inc. Snapchat is a trademark of Snap Inc.","generated_at":"2026-09-27T02:00:00Z","sources":[{"url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["ump.invitation_only","ump.account_good_standing","ump.excluded_parties","ump.age_min_terms"]},{"url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["ump.followers_min","ump.view_time_hours_28d_min","ump.spotlight_view_time_hours_28d_min","ump.age_min_help_page","ump.snap_star_required","ump.original_advertiser_friendly_content","ump.comply_terms_policy","ump.spotlight_min_video_length_seconds"]},{"url":"https://help.snapchat.com/hc/en-us/articles/7012309512724-What-are-Creator-Rewards-and-how-can-I-earn-them","publisher":"Snap Inc. (Snapchat Support)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["ump.country_eligible"]}],"data_freshness":{"rules_db_version":"2026-09-28.1","generated_at":"2026-09-27T02:00:00Z","oldest_verified_at":"2026-09-26","newest_verified_at":"2026-09-27","stale_rule_ids":[],"policy":"Sources are re-checked daily; rules not re-verified within 7 days are listed as stale."},"program":"unified_monetization_program","already_enrolled":false,"summary":{"published_criteria_status":"does_not_meet_published_criteria","disclaimer":"Does not meet the published criteria based on the inputs provided; invitation to the Monetization Program is at Snap's discretion.","pass_count":2,"fail_count":4,"unknown_count":0,"requires_confirmation_count":5},"requirements":[{"label":"CALCULATION","rule_id":"ump.invitation_only","rule_version":1,"claim":"The Monetization Program is open by invitation only; meeting the criteria does not guarantee an invitation. Snap notifies invited creators by email.","rule_status":"current","metric":null,"operator":null,"threshold":{"value":true,"unit":"boolean"},"input_value":null,"outcome":"requires_user_confirmation","explanation":""},{"label":"CALCULATION","rule_id":"ump.followers_min","rule_version":1,"claim":"Creators may be eligible for invitation if they have at least 50,000 followers.","rule_status":"current","metric":"followers","operator":"gte","threshold":{"value":50000,"unit":"followers"},"input_value":32000,"outcome":"fail","explanation":"32,000 < 50,000"},{"label":"CALCULATION","rule_id":"ump.view_time_hours_28d_min","rule_version":1,"claim":"Achieve 15,000 hours of view time over the last 28 days.","rule_status":"current","metric":"view_time_hours_28d","operator":"gte","threshold":{"value":15000,"unit":"hours"},"input_value":9500,"outcome":"fail","explanation":"9,500 < 15,000"},{"label":"CALCULATION","rule_id":"ump.spotlight_view_time_hours_28d_min","rule_version":1,"claim":"At least 3,000 of the 15,000 hours of view time over the last 28 days must come from Spotlight.","rule_status":"current","metric":"spotlight_view_time_hours_28d","operator":"gte","threshold":{"value":3000,"unit":"hours"},"input_value":1200,"outcome":"fail","explanation":"1,200 < 3,000"},{"label":"CALCULATION","rule_id":"ump.age_min_help_page","rule_version":1,"claim":"Be at least 18 years old or the local age of legal majority in your country (primary age requirement shown to users).","rule_status":"current","metric":"meets_age_requirement","operator":"is_true","threshold":{"value":"18 or the local age of majority","unit":"text"},"input_value":null,"outcome":"requires_user_confirmation","explanation":"meets_age_requirement is null; the creator must confirm (age is never collected)"},{"label":"CALCULATION","rule_id":"ump.country_eligible","rule_version":1,"claim":"Creator must reside in an eligible country. Countries listed for 'Snapchat Monetization Program Ads within Stories and Spotlights' payouts.","rule_status":"current","metric":"country","operator":"in","threshold":{"value":["Algeria","Argentina","Australia","Austria","Bahrain","Belgium","Brazil","Canada","Colombia","Denmark","Egypt","Finland","France","Germany","India","Indonesia","Ireland","Italy","Jordan","Korea (the Republic of)","Kuwait","Lebanon","Libya","Malaysia","Mexico","Morocco","Netherlands (the)","New Zealand","Nigeria","Norway","Oman","Pakistan","Palestine","Philippines (the)","Poland","Qatar","Saudi Arabia","Singapore","Spain","Sweden","United Arab Emirates","United Kingdom","United States"],"unit":"country_names"},"input_value":"US","outcome":"pass","explanation":"United States is listed"},{"label":"CALCULATION","rule_id":"ump.snap_star_required","rule_version":1,"claim":"Creator must be a Snap Star to be eligible for invitation.","rule_status":"current","metric":"is_snap_star","operator":"is_true","threshold":{"value":true,"unit":"boolean"},"input_value":false,"outcome":"user_denied","explanation":"Caller reported is_snap_star=false"},{"label":"CALCULATION","rule_id":"ump.original_advertiser_friendly_content","rule_version":1,"claim":"Publish original, advertiser-friendly content compliant with Community Guidelines and Content Guidelines for Recommendation Eligibility.","rule_status":"current","metric":null,"operator":null,"threshold":{"value":true,"unit":"boolean"},"input_value":null,"outcome":"requires_user_confirmation","explanation":""},{"label":"CALCULATION","rule_id":"ump.comply_terms_policy","rule_version":1,"claim":"Comply with the Monetization Terms and the Creator Monetization Policy.","rule_status":"current","metric":null,"operator":null,"threshold":{"value":true,"unit":"boolean"},"input_value":null,"outcome":"requires_user_confirmation","explanation":""},{"label":"CALCULATION","rule_id":"ump.account_good_standing","rule_version":1,"claim":"Snapchat account and Payment Account must be active, in good standing (as determined by Snap), and compliant with the Monetization Terms at all times; creator must pass Snap's and the Payment Provider's compliance review.","rule_status":"current","metric":null,"operator":null,"threshold":{"value":true,"unit":"boolean"},"input_value":null,"outcome":"user_confirmed","explanation":"Caller confirmed; not verified by us"},{"label":"CALCULATION","rule_id":"ump.excluded_parties","rule_version":1,"claim":"Snap employees/officers/directors (and of its affiliates), government entities and their affiliates, and members of a royal family are not eligible.","rule_status":"current","metric":null,"operator":null,"threshold":{"value":true,"unit":"boolean"},"input_value":null,"outcome":"requires_user_confirmation","explanation":""}],"ongoing_requirements":null,"unknowns":[{"rule_id":"ump.invitation_only","reason":"requires_user_confirmation","missing_metric":null,"how_to_resolve":"Creator confirms: The Monetization Program is open by invitation only; meeting the criteria does not guarantee an invitation. Snap notifies invited creators by email."},{"rule_id":"ump.age_min_help_page","reason":"requires_user_confirmation","missing_metric":"meets_age_requirement","how_to_resolve":"Set metrics.meets_age_requirement to true or false (18 or the local age of majority; where applicable see ump.age_min_terms)."},{"rule_id":"ump.original_advertiser_friendly_content","reason":"requires_user_confirmation","missing_metric":null,"how_to_resolve":"Creator confirms: Publish original, advertiser-friendly content compliant with Community Guidelines and Content Guidelines for Recommendation Eligibility."},{"rule_id":"ump.comply_terms_policy","reason":"requires_user_confirmation","missing_metric":null,"how_to_resolve":"Creator confirms: Comply with the Monetization Terms and the Creator Monetization Policy."},{"rule_id":"ump.excluded_parties","reason":"requires_user_confirmation","missing_metric":null,"how_to_resolve":"Creator confirms: Snap employees/officers/directors (and of its affiliates), government entities and their affiliates, and members of a royal family are not eligible."}],"facts":[{"label":"FACT","rule_id":"ump.invitation_only","version":1,"program":"unified_monetization_program","claim":"The Monetization Program is open by invitation only; meeting the criteria does not guarantee an invitation. Snap notifies invited creators by email.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"program_fact","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Effective date is the Monetization Terms effective date (February 1, 2025). Invitation cannot be computed from metrics; engine must report it as requires_user_confirmation. Help page also states Snap does not charge fees for invitation and no third party controls eligibility."},{"label":"FACT","rule_id":"ump.followers_min","version":1,"program":"unified_monetization_program","claim":"Creators may be eligible for invitation if they have at least 50,000 followers.","value":50000,"unit":"followers","metric":"followers","operator":"gte","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Effective date not stated on the source page. Same 50,000 figure also appeared in the Dec 16, 2024 newsroom announcement."},{"label":"FACT","rule_id":"ump.view_time_hours_28d_min","version":1,"program":"unified_monetization_program","claim":"Achieve 15,000 hours of view time over the last 28 days.","value":15000,"unit":"hours","metric":"view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","requires_user_confirmation":false,"supersedes":"ump.view_metric_any_of_2024@1","applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.view_metric_any_of_2024"],"notes":"Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Prior rule ump.view_metric_any_of_2024: one of 10 million Snap views, 1 million Spotlight views, or 12,000 hours of view time in the last 28 days. Source: Snap Newsroom, \"Snapchat Introduces New, Unified Monetization Program for Creators\", Dec 16, 2024, https://newsroom.snap.com/snapchat-new-creator-monetization, verified 2026-09-27. Whether the 15,000 hours count Stories and Spotlight combined is implied ('of those hours coming from Spotlight') but not defined on the page."},{"label":"FACT","rule_id":"ump.spotlight_view_time_hours_28d_min","version":1,"program":"unified_monetization_program","claim":"At least 3,000 of the 15,000 hours of view time over the last 28 days must come from Spotlight.","value":3000,"unit":"hours","metric":"spotlight_view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.view_time_hours_28d_min"],"notes":"Entry (invitation) criterion from the same help-page edit as the 15,000-hour view-time rule. Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Distinct from the 100-hour ongoing threshold for already-enrolled creators (ump.ongoing_spotlight_view_time_hours_28d_max_rewards)."},{"label":"FACT","rule_id":"ump.age_min_help_page","version":1,"program":"unified_monetization_program","claim":"Be at least 18 years old or the local age of legal majority in your country (primary age requirement shown to users).","value":"18 or the local age of majority","unit":"text","metric":"meets_age_requirement","operator":"is_true","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.age_min_terms"],"notes":"Primary age requirement (help page). Supplementary, where applicable: the Monetization Terms' Minimum Eligibility mentions participation from age 16 with parental consent (see ump.age_min_terms); this is a note, not an equal alternative. Tools accept only meets_age_requirement: true/false/null (null returns requires_user_confirmation). Creator age is never collected or stored."},{"label":"FACT","rule_id":"ump.country_eligible","version":1,"program":"unified_monetization_program","claim":"Creator must reside in an eligible country. Countries listed for 'Snapchat Monetization Program Ads within Stories and Spotlights' payouts.","value":["Algeria","Argentina","Australia","Austria","Bahrain","Belgium","Brazil","Canada","Colombia","Denmark","Egypt","Finland","France","Germany","India","Indonesia","Ireland","Italy","Jordan","Korea (the Republic of)","Kuwait","Lebanon","Libya","Malaysia","Mexico","Morocco","Netherlands (the)","New Zealand","Nigeria","Norway","Oman","Pakistan","Palestine","Philippines (the)","Poland","Qatar","Saudi Arabia","Singapore","Spain","Sweden","United Arab Emirates","United Kingdom","United States"],"unit":"country_names","metric":"country","operator":"in","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/7012309512724-What-are-Creator-Rewards-and-how-can-I-earn-them","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"iso_countries":[{"snap_name":"Algeria","alpha2":"DZ","alpha3":"DZA","numeric":"012"},{"snap_name":"Argentina","alpha2":"AR","alpha3":"ARG","numeric":"032"},{"snap_name":"Australia","alpha2":"AU","alpha3":"AUS","numeric":"036"},{"snap_name":"Austria","alpha2":"AT","alpha3":"AUT","numeric":"040"},{"snap_name":"Bahrain","alpha2":"BH","alpha3":"BHR","numeric":"048"},{"snap_name":"Belgium","alpha2":"BE","alpha3":"BEL","numeric":"056"},{"snap_name":"Brazil","alpha2":"BR","alpha3":"BRA","numeric":"076"},{"snap_name":"Canada","alpha2":"CA","alpha3":"CAN","numeric":"124"},{"snap_name":"Colombia","alpha2":"CO","alpha3":"COL","numeric":"170"},{"snap_name":"Denmark","alpha2":"DK","alpha3":"DNK","numeric":"208"},{"snap_name":"Egypt","alpha2":"EG","alpha3":"EGY","numeric":"818"},{"snap_name":"Finland","alpha2":"FI","alpha3":"FIN","numeric":"246"},{"snap_name":"France","alpha2":"FR","alpha3":"FRA","numeric":"250"},{"snap_name":"Germany","alpha2":"DE","alpha3":"DEU","numeric":"276"},{"snap_name":"India","alpha2":"IN","alpha3":"IND","numeric":"356"},{"snap_name":"Indonesia","alpha2":"ID","alpha3":"IDN","numeric":"360"},{"snap_name":"Ireland","alpha2":"IE","alpha3":"IRL","numeric":"372"},{"snap_name":"Italy","alpha2":"IT","alpha3":"ITA","numeric":"380"},{"snap_name":"Jordan","alpha2":"JO","alpha3":"JOR","numeric":"400"},{"snap_name":"Korea (the Republic of)","alpha2":"KR","alpha3":"KOR","numeric":"410"},{"snap_name":"Kuwait","alpha2":"KW","alpha3":"KWT","numeric":"414"},{"snap_name":"Lebanon","alpha2":"LB","alpha3":"LBN","numeric":"422"},{"snap_name":"Libya","alpha2":"LY","alpha3":"LBY","numeric":"434"},{"snap_name":"Malaysia","alpha2":"MY","alpha3":"MYS","numeric":"458"},{"snap_name":"Mexico","alpha2":"MX","alpha3":"MEX","numeric":"484"},{"snap_name":"Morocco","alpha2":"MA","alpha3":"MAR","numeric":"504"},{"snap_name":"Netherlands (the)","alpha2":"NL","alpha3":"NLD","numeric":"528"},{"snap_name":"New Zealand","alpha2":"NZ","alpha3":"NZL","numeric":"554"},{"snap_name":"Nigeria","alpha2":"NG","alpha3":"NGA","numeric":"566"},{"snap_name":"Norway","alpha2":"NO","alpha3":"NOR","numeric":"578"},{"snap_name":"Oman","alpha2":"OM","alpha3":"OMN","numeric":"512"},{"snap_name":"Pakistan","alpha2":"PK","alpha3":"PAK","numeric":"586"},{"snap_name":"Palestine","alpha2":"PS","alpha3":"PSE","numeric":"275"},{"snap_name":"Philippines (the)","alpha2":"PH","alpha3":"PHL","numeric":"608"},{"snap_name":"Poland","alpha2":"PL","alpha3":"POL","numeric":"616"},{"snap_name":"Qatar","alpha2":"QA","alpha3":"QAT","numeric":"634"},{"snap_name":"Saudi Arabia","alpha2":"SA","alpha3":"SAU","numeric":"682"},{"snap_name":"Singapore","alpha2":"SG","alpha3":"SGP","numeric":"702"},{"snap_name":"Spain","alpha2":"ES","alpha3":"ESP","numeric":"724"},{"snap_name":"Sweden","alpha2":"SE","alpha3":"SWE","numeric":"752"},{"snap_name":"United Arab Emirates","alpha2":"AE","alpha3":"ARE","numeric":"784"},{"snap_name":"United Kingdom","alpha2":"GB","alpha3":"GBR","numeric":"826"},{"snap_name":"United States","alpha2":"US","alpha3":"USA","numeric":"840"}],"requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"43 countries. Identical list appears on the payout-countries help article under the older label 'Creator Midroll Ads within Stories'. The Creator Rewards FAQ (5909152630420) shows a shorter, older-looking generic list (37 countries; missing Colombia, Lebanon, Malaysia, Pakistan, Poland, Spain) — treated as stale; flagged for Ryan. Monetization Terms say the Eligible Regions list is in the 'Creator Rewards Guidelines', which we could not locate as a standalone page. Engine must map ISO codes to these names in a reviewed lookup table."},{"label":"FACT","rule_id":"ump.snap_star_required","version":1,"program":"unified_monetization_program","claim":"Creator must be a Snap Star to be eligible for invitation.","value":true,"unit":"boolean","metric":"is_snap_star","operator":"is_true","window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Snap Star status is granted by Snap after application; a user may self-report it, but we cannot verify it. Treated as requires_user_confirmation."},{"label":"FACT","rule_id":"ump.original_advertiser_friendly_content","version":1,"program":"unified_monetization_program","claim":"Publish original, advertiser-friendly content compliant with Community Guidelines and Content Guidelines for Recommendation Eligibility.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Qualitative; cannot be checked from metrics."},{"label":"FACT","rule_id":"ump.comply_terms_policy","version":1,"program":"unified_monetization_program","claim":"Comply with the Monetization Terms and the Creator Monetization Policy.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"all","requirement_phase":"entry_and_ongoing","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Qualitative; cannot be checked from metrics."},{"label":"FACT","rule_id":"ump.account_good_standing","version":1,"program":"unified_monetization_program","claim":"Snapchat account and Payment Account must be active, in good standing (as determined by Snap), and compliant with the Monetization Terms at all times; creator must pass Snap's and the Payment Provider's compliance review.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"all","requirement_phase":"entry_and_ongoing","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Determined by Snap; cannot be checked by us."},{"label":"FACT","rule_id":"ump.excluded_parties","version":1,"program":"unified_monetization_program","claim":"Snap employees/officers/directors (and of its affiliates), government entities and their affiliates, and members of a royal family are not eligible.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Self-attested condition."},{"label":"FACT","rule_id":"ump.age_min_terms","version":1,"program":"unified_monetization_program","claim":"Monetization Terms Minimum Eligibility: individuals must be at least the age of legal majority in their jurisdiction (or, if applicable, at least 16 years old with parental consent); entities' representatives must be at least 18 (or legal age of majority).","value":"age of legal majority in jurisdiction; or at least 16 with parental/guardian consent where applicable","unit":"text","metric":null,"operator":null,"window_days":null,"rule_type":"supplementary_note","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"not_applicable","requirement_phase":"not_applicable","mvp_scope":"in_scope","related_rule_ids":["ump.age_min_help_page"],"notes":"Supplementary note referenced from ump.age_min_help_page ('where applicable'). Not an equal alternative to the primary requirement of 18 or the local age of majority. Requires user confirmation because majority age and parental-consent rules depend on jurisdiction."},{"label":"FACT","rule_id":"ump.spotlight_min_video_length_seconds","version":1,"program":"unified_monetization_program","claim":"For Spotlight videos to be eligible to earn revenue, they must be at least 30 seconds long.","value":30,"unit":"seconds","metric":"spotlight_video_length_seconds","operator":"gte","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":"ump.spotlight_min_video_length_2024@1","applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Per-video condition, not an account eligibility criterion. Effective date not stated. Supersedes the Dec 2024 announcement that Spotlight videos 'longer than 1 minute' could be monetized (ump.spotlight_min_video_length_2024). Classified as an entry-type rule per Ryan's 2026-09-26 fix; it is a per-video condition, so v1 calculators list it as a FACT and do not evaluate it."}]}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"405":{"$ref":"#/components/responses/Error"},"413":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/v1/tools/calculate_gap":{"post":{"tags":["calculations"],"operationId":"calculate_gap","summary":"Exact shortfall for each numeric entry requirement (absolute and percent complete) and the binding constraint. Ongoing requirements are included only when already_enrolled is true.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/calculate_gap.input.schema"}}}},"responses":{"200":{"description":"Gap calculation.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/calculate_gap.output.schema"},"example":{"tool":"calculate_gap","api_version":"v1","notice":"HowToMakeMoneyOnSnapchat.com is an independent third party and is not affiliated with, endorsed by, or sponsored by Snap Inc. Snapchat is a trademark of Snap Inc.","generated_at":"2026-09-27T02:00:00Z","sources":[{"url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["ump.followers_min","ump.view_time_hours_28d_min","ump.spotlight_view_time_hours_28d_min"]}],"data_freshness":{"rules_db_version":"2026-09-28.1","generated_at":"2026-09-27T02:00:00Z","oldest_verified_at":"2026-09-26","newest_verified_at":"2026-09-27","stale_rule_ids":[],"policy":"Sources are re-checked daily; rules not re-verified within 7 days are listed as stale."},"program":"unified_monetization_program","already_enrolled":false,"gaps":[{"label":"CALCULATION","rule_id":"ump.followers_min","rule_version":1,"metric":"followers","unit":"followers","window_days":null,"threshold":50000,"current":32000,"met":false,"shortfall_absolute":18000,"surplus_absolute":0,"percent_complete":64,"percent_complete_uncapped":64,"formula":"shortfall = max(50000 - 32000, 0); percent = min(32000/50000, 1) * 100"},{"label":"CALCULATION","rule_id":"ump.view_time_hours_28d_min","rule_version":1,"metric":"view_time_hours_28d","unit":"hours","window_days":28,"threshold":15000,"current":9500,"met":false,"shortfall_absolute":5500,"surplus_absolute":0,"percent_complete":63.33,"percent_complete_uncapped":63.33,"formula":"shortfall = max(15000 - 9500, 0); percent = min(9500/15000, 1) * 100"},{"label":"CALCULATION","rule_id":"ump.spotlight_view_time_hours_28d_min","rule_version":1,"metric":"spotlight_view_time_hours_28d","unit":"hours","window_days":28,"threshold":3000,"current":1200,"met":false,"shortfall_absolute":1800,"surplus_absolute":0,"percent_complete":40,"percent_complete_uncapped":40,"formula":"shortfall = max(3000 - 1200, 0); percent = min(1200/3000, 1) * 100"}],"ongoing_gaps":null,"binding_constraint":{"rule_id":"ump.spotlight_view_time_hours_28d_min","metric":"spotlight_view_time_hours_28d","percent_complete":40,"rule":"unmet requirement with the lowest percent_complete; ties broken by rule_id"},"unknowns":[],"facts":[{"label":"FACT","rule_id":"ump.followers_min","version":1,"program":"unified_monetization_program","claim":"Creators may be eligible for invitation if they have at least 50,000 followers.","value":50000,"unit":"followers","metric":"followers","operator":"gte","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Effective date not stated on the source page. Same 50,000 figure also appeared in the Dec 16, 2024 newsroom announcement."},{"label":"FACT","rule_id":"ump.view_time_hours_28d_min","version":1,"program":"unified_monetization_program","claim":"Achieve 15,000 hours of view time over the last 28 days.","value":15000,"unit":"hours","metric":"view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","requires_user_confirmation":false,"supersedes":"ump.view_metric_any_of_2024@1","applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.view_metric_any_of_2024"],"notes":"Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Prior rule ump.view_metric_any_of_2024: one of 10 million Snap views, 1 million Spotlight views, or 12,000 hours of view time in the last 28 days. Source: Snap Newsroom, \"Snapchat Introduces New, Unified Monetization Program for Creators\", Dec 16, 2024, https://newsroom.snap.com/snapchat-new-creator-monetization, verified 2026-09-27. Whether the 15,000 hours count Stories and Spotlight combined is implied ('of those hours coming from Spotlight') but not defined on the page."},{"label":"FACT","rule_id":"ump.spotlight_view_time_hours_28d_min","version":1,"program":"unified_monetization_program","claim":"At least 3,000 of the 15,000 hours of view time over the last 28 days must come from Spotlight.","value":3000,"unit":"hours","metric":"spotlight_view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.view_time_hours_28d_min"],"notes":"Entry (invitation) criterion from the same help-page edit as the 15,000-hour view-time rule. Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Distinct from the 100-hour ongoing threshold for already-enrolled creators (ump.ongoing_spotlight_view_time_hours_28d_max_rewards)."}],"recommendations":[{"label":"RECOMMENDATION","order":1,"objective":"Raise 28-day Spotlight view time","reason":"Spotlight view time is the binding constraint at 40% of the 3,000-hour entry criterion.","linked_rule_id":"ump.spotlight_view_time_hours_28d_min","measurable_target":{"metric":"spotlight_view_time_hours_28d","value":3000,"unit":"hours","by_date":null},"assumptions":["Criteria on the official help page as verified 2026-09-27 remain unchanged."],"risks":["Meeting the published criteria does not guarantee an invitation; invitation is at Snap's discretion."],"realism_note":null}]}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"405":{"$ref":"#/components/responses/Error"},"413":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/v1/tools/calculate_growth_pace":{"post":{"tags":["calculations"],"operationId":"calculate_growth_pace","summary":"Daily and weekly pace needed to close each gap within N days, with scenarios and labeled assumptions (a projection, not a prediction).","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/calculate_growth_pace.input.schema"}}}},"responses":{"200":{"description":"Growth-pace calculation.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/calculate_growth_pace.output.schema"},"example":{"tool":"calculate_growth_pace","api_version":"v1","notice":"HowToMakeMoneyOnSnapchat.com is an independent third party and is not affiliated with, endorsed by, or sponsored by Snap Inc. Snapchat is a trademark of Snap Inc.","generated_at":"2026-09-27T02:00:00Z","sources":[{"url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["ump.followers_min","ump.view_time_hours_28d_min","ump.spotlight_view_time_hours_28d_min"]}],"data_freshness":{"rules_db_version":"2026-09-28.1","generated_at":"2026-09-27T02:00:00Z","oldest_verified_at":"2026-09-26","newest_verified_at":"2026-09-27","stale_rule_ids":[],"policy":"Sources are re-checked daily; rules not re-verified within 7 days are listed as stale."},"program":"unified_monetization_program","already_enrolled":false,"target_days":90,"target_date":"2026-12-26","paces":[{"rule_id":"ump.followers_min","metric":"followers","metric_kind":"cumulative","window_days":null,"current":32000,"threshold":50000,"gap":18000,"already_met":false,"scenarios":[{"label":"CALCULATION","name":"linear","computable":true,"required_daily":200,"required_weekly":1400,"required_daily_growth_rate_pct":null,"unit":"followers/day","formula":"(T - C) / N","assumptions":["Constant net follower gain per day."],"not_computable_reason":null},{"label":"CALCULATION","name":"compound","computable":true,"required_daily":null,"required_weekly":null,"required_daily_growth_rate_pct":0.4971,"unit":"%/day","formula":"(T / C)^(1/N) - 1","assumptions":["Growth proportional to current audience size."],"not_computable_reason":null}],"observed_daily_change":120,"required_to_observed_ratio":1.667},{"rule_id":"ump.view_time_hours_28d_min","metric":"view_time_hours_28d","metric_kind":"rolling_window","window_days":28,"current":9500,"threshold":15000,"gap":5500,"already_met":false,"scenarios":[{"label":"CALCULATION","name":"rolling_window_replacement","computable":true,"required_daily":535.71,"required_weekly":3750,"required_daily_growth_rate_pct":null,"unit":"hours/day","formula":"if target_days >= window: T / W; else (T - a*(W - N)) / N, where a = current / W","assumptions":["Days rolling out of the window were at the current daily average.","Daily view time is sustained through the final window."],"not_computable_reason":null}],"observed_daily_change":null,"required_to_observed_ratio":null},{"rule_id":"ump.spotlight_view_time_hours_28d_min","metric":"spotlight_view_time_hours_28d","metric_kind":"rolling_window","window_days":28,"current":1200,"threshold":3000,"gap":1800,"already_met":false,"scenarios":[{"label":"CALCULATION","name":"rolling_window_replacement","computable":true,"required_daily":107.14,"required_weekly":750,"required_daily_growth_rate_pct":null,"unit":"hours/day","formula":"if target_days >= window: T / W; else (T - a*(W - N)) / N, where a = current / W","assumptions":["Days rolling out of the window were at the current daily average.","Daily view time is sustained through the final window."],"not_computable_reason":null}],"observed_daily_change":null,"required_to_observed_ratio":null}],"ongoing_paces":null,"projection_disclaimer":"Projections show the pace required under stated assumptions. They are not predictions of what will happen.","unknowns":[],"facts":[{"label":"FACT","rule_id":"ump.followers_min","version":1,"program":"unified_monetization_program","claim":"Creators may be eligible for invitation if they have at least 50,000 followers.","value":50000,"unit":"followers","metric":"followers","operator":"gte","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Effective date not stated on the source page. Same 50,000 figure also appeared in the Dec 16, 2024 newsroom announcement."},{"label":"FACT","rule_id":"ump.view_time_hours_28d_min","version":1,"program":"unified_monetization_program","claim":"Achieve 15,000 hours of view time over the last 28 days.","value":15000,"unit":"hours","metric":"view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","requires_user_confirmation":false,"supersedes":"ump.view_metric_any_of_2024@1","applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.view_metric_any_of_2024"],"notes":"Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Prior rule ump.view_metric_any_of_2024: one of 10 million Snap views, 1 million Spotlight views, or 12,000 hours of view time in the last 28 days. Source: Snap Newsroom, \"Snapchat Introduces New, Unified Monetization Program for Creators\", Dec 16, 2024, https://newsroom.snap.com/snapchat-new-creator-monetization, verified 2026-09-27. Whether the 15,000 hours count Stories and Spotlight combined is implied ('of those hours coming from Spotlight') but not defined on the page."},{"label":"FACT","rule_id":"ump.spotlight_view_time_hours_28d_min","version":1,"program":"unified_monetization_program","claim":"At least 3,000 of the 15,000 hours of view time over the last 28 days must come from Spotlight.","value":3000,"unit":"hours","metric":"spotlight_view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.view_time_hours_28d_min"],"notes":"Entry (invitation) criterion from the same help-page edit as the 15,000-hour view-time rule. Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Distinct from the 100-hour ongoing threshold for already-enrolled creators (ump.ongoing_spotlight_view_time_hours_28d_max_rewards)."}],"recommendations":[{"label":"RECOMMENDATION","order":1,"objective":"Raise 28-day Spotlight view time","reason":"Spotlight view time is the binding constraint at 40% of the 3,000-hour entry criterion.","linked_rule_id":"ump.spotlight_view_time_hours_28d_min","measurable_target":{"metric":"spotlight_view_time_hours_28d","value":3000,"unit":"hours","by_date":"2026-12-26"},"assumptions":["Criteria on the official help page as verified 2026-09-27 remain unchanged."],"risks":["Meeting the published criteria does not guarantee an invitation; invitation is at Snap's discretion."],"realism_note":"Required Spotlight daily average (107.14 h/day) is 2.5x the current average (42.86 h/day)."}]}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"405":{"$ref":"#/components/responses/Error"},"413":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/v1/health":{"get":{"tags":["meta"],"operationId":"health","summary":"Liveness plus the published rules_db_version.","responses":{"200":{"description":"OK","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["status","rules_db_version","notice"],"properties":{"status":{"type":"string","enum":["ok","degraded"]},"rules_db_version":{"type":"string"},"notice":{"type":"string"}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"405":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Error"}}}},"/openapi.json":{"get":{"tags":["meta"],"operationId":"openapi_document","summary":"This OpenAPI 3.1 document.","responses":{"200":{"description":"OpenAPI document bundled from the schemas in this repository.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"type":"object","description":"OpenAPI 3.1 document."}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/keys":{"post":{"tags":["meta"],"operationId":"issue_free_api_key","summary":"Issue a free API key. The secret is shown once.","description":"No email and no other personal data. The response contains the secret once. Only a SHA-256 hash with a server-side pepper is stored. Anonymous calls keep working if you omit the key. A valid key raises the rate limit. Issuance is rate-limited per hashed client address per day. A request body is ignored.\n","security":[],"responses":{"201":{"description":"Key issued. The secret will not be shown again.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["notice","shown_once","key"],"properties":{"notice":{"type":"string"},"shown_once":{"const":true},"key":{"type":"object","additionalProperties":false,"required":["id","secret","created_at"],"properties":{"id":{"type":"string"},"secret":{"type":"string"},"created_at":{"type":"string","format":"date-time"}}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"413":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/Error"}}}},"/mcp":{"get":{"tags":["meta"],"operationId":"mcp_get","summary":"Description of the remote MCP endpoint for browsers and JSON clients.","description":"A GET whose Accept header includes text/event-stream is the streamable HTTP transport. Any other GET returns a short HTML page, or JSON when Accept includes application/json and does not include text/html. POST behavior is unchanged.\n","responses":{"200":{"description":"HTML guide, JSON guide, or the streamable HTTP response.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"text/html":{"schema":{"type":"string"}},"application/json":{"schema":{"type":"object","additionalProperties":true,"required":["notice","kind","transport","url","tools","docs"],"properties":{"notice":{"type":"string"},"kind":{"const":"remote-mcp"},"transport":{"const":"streamable-http"},"url":{"type":"string"},"tools":{"type":"array","items":{"type":"object"}},"docs":{"type":"string"}}}}}},"405":{"$ref":"#/components/responses/Error"}}},"post":{"tags":["meta"],"operationId":"mcp_post","summary":"Remote MCP streamable HTTP (stateless JSON responses).","description":"Read-only. Exactly five tools, the same handler functions as REST. Anonymous access works with no key. A free key raises the rate limit via Authorization Bearer or X-API-Key. The canonical MCP URL is https://howtomakemoneyonsnapchat.com/mcp. The tool result text is the REST JSON body. Server instructions include \"Independent; not affiliated with, endorsed by, or sponsored by Snap Inc.\"\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"A JSON-RPC request (initialize, ping, tools/list, or tools/call)."}}}},"responses":{"200":{"description":"JSON-RPC result. Tool errors use the REST error schema inside the tool result text.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Unauthorized"},"405":{"$ref":"#/components/responses/Error"},"413":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/Error"}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Optional free API key. Anonymous access works when this header is omitted. A bad key returns 401 and says anonymous access is available."},"apiKeyHeader":{"type":"apiKey","in":"header","name":"X-API-Key","description":"Optional free API key. Anonymous access works when this header is omitted."}},"headers":{"RateLimit-Limit":{"description":"Requests allowed in the current window for this client (anonymous clients are keyed by an IP and User-Agent hash; a free key is keyed by key id).","schema":{"type":"integer"}},"RateLimit-Remaining":{"description":"Requests remaining in the current window.","schema":{"type":"integer"}},"RateLimit-Reset":{"description":"Seconds until the window resets.","schema":{"type":"integer"}},"Retry-After":{"description":"Seconds to wait before retrying (sent with 429).","schema":{"type":"integer"}},"X-Request-Id":{"description":"Correlation id, echoed in error bodies.","schema":{"type":"string"}}},"parameters":{"RequirementsProgram":{"name":"program","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z0-9_]{2,64}$"}},"RequirementsCountry":{"name":"country","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Z]{2}$"}},"IncludeUnverified":{"name":"include_unverified","in":"query","required":false,"schema":{"type":"boolean","default":true}},"IncludeHistorical":{"name":"include_historical","in":"query","required":false,"schema":{"type":"boolean","default":false}},"IncludeOutOfScope":{"name":"include_out_of_scope","in":"query","required":false,"schema":{"type":"boolean","default":false}},"RequirementPhase":{"name":"requirement_phase","in":"query","required":false,"schema":{"type":"string","enum":["entry","ongoing","entry_and_ongoing","not_applicable"]}},"AsOf":{"name":"as_of","in":"query","required":false,"schema":{"type":"string","format":"date"}},"Since":{"name":"since","in":"query","required":true,"schema":{"type":"string","format":"date"}},"Until":{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date"}},"ChangesProgram":{"name":"program","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z0-9_]{2,64}$"}},"Limit":{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200,"default":50}},"Cursor":{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":200}}},"responses":{"GetMonetizationRequirementsOK":{"description":"Sourced, dated requirement FACTs.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/get_monetization_requirements.output.schema"},"example":{"tool":"get_monetization_requirements","api_version":"v1","notice":"HowToMakeMoneyOnSnapchat.com is an independent third party and is not affiliated with, endorsed by, or sponsored by Snap Inc. Snapchat is a trademark of Snap Inc.","generated_at":"2026-09-27T02:00:00Z","sources":[{"url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["ump.account_good_standing","ump.age_min_terms","ump.excluded_parties","ump.invalid_activity_excluded","ump.invitation_only","ump.non_us_physical_location","ump.payment_formula_proprietary"]},{"url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["ump.age_min_help_page","ump.comply_terms_policy","ump.followers_min","ump.ongoing_spotlight_view_time_hours_28d_max_rewards","ump.original_advertiser_friendly_content","ump.revenue_source","ump.snap_star_required","ump.spotlight_min_video_length_seconds","ump.spotlight_view_time_hours_28d_min","ump.view_time_hours_28d_min"]},{"url":"https://help.snapchat.com/hc/en-us/articles/7012309512724-What-are-Creator-Rewards-and-how-can-I-earn-them","publisher":"Snap Inc. (Snapchat Support)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["ump.country_eligible"]}],"data_freshness":{"rules_db_version":"2026-09-28.1","generated_at":"2026-09-27T02:00:00Z","oldest_verified_at":"2026-09-26","newest_verified_at":"2026-09-27","stale_rule_ids":[],"policy":"Sources are re-checked daily; rules not re-verified within 7 days are listed as stale."},"catalog_scope":{"mvp_in_force":49,"in_force_including_out_of_scope":61,"mvp_including_historical":58,"approved_total":71,"out_of_scope_programs":["creator_subscriptions","lens_creator_rewards"],"summary":"49 facts in MVP scope; 61 total including Creator Subscriptions, and Lens Creator Rewards; 58 in-scope records including historical"},"direct_answer":"To be considered for Snapchat's Monetization Program, Snap lists 50,000 followers, 15,000 hours of view time in the last 28 days (at least 3,000 hours from Spotlight), age 18 or the local age of majority, a country on the published list (43 countries), and Snap Star status. Accounts must also be in good standing, follow Snap's terms and content guidelines, and post original, advertiser-friendly content; Spotlight videos must be at least 30 seconds. Entry is by invitation from Snap, and when your numbers meet these, our tools say you 'meet the published criteria'; Snap decides who is invited.","query":{"program":"unified_monetization_program","country":"US","include_unverified":true,"include_historical":false,"include_out_of_scope":false,"requirement_phase":null,"as_of":"2026-09-27"},"programs":[{"program":"unified_monetization_program","program_status":"active","rule_ids":["ump.account_good_standing","ump.age_min_help_page","ump.age_min_terms","ump.comply_terms_policy","ump.country_eligible","ump.excluded_parties","ump.followers_min","ump.invalid_activity_excluded","ump.invitation_only","ump.non_us_physical_location","ump.ongoing_spotlight_view_time_hours_28d_max_rewards","ump.original_advertiser_friendly_content","ump.payment_formula_proprietary","ump.revenue_source","ump.snap_star_required","ump.spotlight_min_video_length_seconds","ump.spotlight_view_time_hours_28d_min","ump.view_time_hours_28d_min"]}],"facts":[{"label":"FACT","rule_id":"ump.account_good_standing","version":1,"program":"unified_monetization_program","claim":"Snapchat account and Payment Account must be active, in good standing (as determined by Snap), and compliant with the Monetization Terms at all times; creator must pass Snap's and the Payment Provider's compliance review.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"all","requirement_phase":"entry_and_ongoing","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Determined by Snap; cannot be checked by us."},{"label":"FACT","rule_id":"ump.age_min_help_page","version":1,"program":"unified_monetization_program","claim":"Be at least 18 years old or the local age of legal majority in your country (primary age requirement shown to users).","value":"18 or the local age of majority","unit":"text","metric":"meets_age_requirement","operator":"is_true","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.age_min_terms"],"notes":"Primary age requirement (help page). Supplementary, where applicable: the Monetization Terms' Minimum Eligibility mentions participation from age 16 with parental consent (see ump.age_min_terms); this is a note, not an equal alternative. Tools accept only meets_age_requirement: true/false/null (null returns requires_user_confirmation). Creator age is never collected or stored."},{"label":"FACT","rule_id":"ump.age_min_terms","version":1,"program":"unified_monetization_program","claim":"Monetization Terms Minimum Eligibility: individuals must be at least the age of legal majority in their jurisdiction (or, if applicable, at least 16 years old with parental consent); entities' representatives must be at least 18 (or legal age of majority).","value":"age of legal majority in jurisdiction; or at least 16 with parental/guardian consent where applicable","unit":"text","metric":null,"operator":null,"window_days":null,"rule_type":"supplementary_note","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"not_applicable","requirement_phase":"not_applicable","mvp_scope":"in_scope","related_rule_ids":["ump.age_min_help_page"],"notes":"Supplementary note referenced from ump.age_min_help_page ('where applicable'). Not an equal alternative to the primary requirement of 18 or the local age of majority. Requires user confirmation because majority age and parental-consent rules depend on jurisdiction."},{"label":"FACT","rule_id":"ump.comply_terms_policy","version":1,"program":"unified_monetization_program","claim":"Comply with the Monetization Terms and the Creator Monetization Policy.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"all","requirement_phase":"entry_and_ongoing","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Qualitative; cannot be checked from metrics."},{"label":"FACT","rule_id":"ump.country_eligible","version":1,"program":"unified_monetization_program","claim":"Creator must reside in an eligible country. Countries listed for 'Snapchat Monetization Program Ads within Stories and Spotlights' payouts.","value":["Algeria","Argentina","Australia","Austria","Bahrain","Belgium","Brazil","Canada","Colombia","Denmark","Egypt","Finland","France","Germany","India","Indonesia","Ireland","Italy","Jordan","Korea (the Republic of)","Kuwait","Lebanon","Libya","Malaysia","Mexico","Morocco","Netherlands (the)","New Zealand","Nigeria","Norway","Oman","Pakistan","Palestine","Philippines (the)","Poland","Qatar","Saudi Arabia","Singapore","Spain","Sweden","United Arab Emirates","United Kingdom","United States"],"unit":"country_names","metric":"country","operator":"in","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/7012309512724-What-are-Creator-Rewards-and-how-can-I-earn-them","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"iso_countries":[{"snap_name":"Algeria","alpha2":"DZ","alpha3":"DZA","numeric":"012"},{"snap_name":"Argentina","alpha2":"AR","alpha3":"ARG","numeric":"032"},{"snap_name":"Australia","alpha2":"AU","alpha3":"AUS","numeric":"036"},{"snap_name":"Austria","alpha2":"AT","alpha3":"AUT","numeric":"040"},{"snap_name":"Bahrain","alpha2":"BH","alpha3":"BHR","numeric":"048"},{"snap_name":"Belgium","alpha2":"BE","alpha3":"BEL","numeric":"056"},{"snap_name":"Brazil","alpha2":"BR","alpha3":"BRA","numeric":"076"},{"snap_name":"Canada","alpha2":"CA","alpha3":"CAN","numeric":"124"},{"snap_name":"Colombia","alpha2":"CO","alpha3":"COL","numeric":"170"},{"snap_name":"Denmark","alpha2":"DK","alpha3":"DNK","numeric":"208"},{"snap_name":"Egypt","alpha2":"EG","alpha3":"EGY","numeric":"818"},{"snap_name":"Finland","alpha2":"FI","alpha3":"FIN","numeric":"246"},{"snap_name":"France","alpha2":"FR","alpha3":"FRA","numeric":"250"},{"snap_name":"Germany","alpha2":"DE","alpha3":"DEU","numeric":"276"},{"snap_name":"India","alpha2":"IN","alpha3":"IND","numeric":"356"},{"snap_name":"Indonesia","alpha2":"ID","alpha3":"IDN","numeric":"360"},{"snap_name":"Ireland","alpha2":"IE","alpha3":"IRL","numeric":"372"},{"snap_name":"Italy","alpha2":"IT","alpha3":"ITA","numeric":"380"},{"snap_name":"Jordan","alpha2":"JO","alpha3":"JOR","numeric":"400"},{"snap_name":"Korea (the Republic of)","alpha2":"KR","alpha3":"KOR","numeric":"410"},{"snap_name":"Kuwait","alpha2":"KW","alpha3":"KWT","numeric":"414"},{"snap_name":"Lebanon","alpha2":"LB","alpha3":"LBN","numeric":"422"},{"snap_name":"Libya","alpha2":"LY","alpha3":"LBY","numeric":"434"},{"snap_name":"Malaysia","alpha2":"MY","alpha3":"MYS","numeric":"458"},{"snap_name":"Mexico","alpha2":"MX","alpha3":"MEX","numeric":"484"},{"snap_name":"Morocco","alpha2":"MA","alpha3":"MAR","numeric":"504"},{"snap_name":"Netherlands (the)","alpha2":"NL","alpha3":"NLD","numeric":"528"},{"snap_name":"New Zealand","alpha2":"NZ","alpha3":"NZL","numeric":"554"},{"snap_name":"Nigeria","alpha2":"NG","alpha3":"NGA","numeric":"566"},{"snap_name":"Norway","alpha2":"NO","alpha3":"NOR","numeric":"578"},{"snap_name":"Oman","alpha2":"OM","alpha3":"OMN","numeric":"512"},{"snap_name":"Pakistan","alpha2":"PK","alpha3":"PAK","numeric":"586"},{"snap_name":"Palestine","alpha2":"PS","alpha3":"PSE","numeric":"275"},{"snap_name":"Philippines (the)","alpha2":"PH","alpha3":"PHL","numeric":"608"},{"snap_name":"Poland","alpha2":"PL","alpha3":"POL","numeric":"616"},{"snap_name":"Qatar","alpha2":"QA","alpha3":"QAT","numeric":"634"},{"snap_name":"Saudi Arabia","alpha2":"SA","alpha3":"SAU","numeric":"682"},{"snap_name":"Singapore","alpha2":"SG","alpha3":"SGP","numeric":"702"},{"snap_name":"Spain","alpha2":"ES","alpha3":"ESP","numeric":"724"},{"snap_name":"Sweden","alpha2":"SE","alpha3":"SWE","numeric":"752"},{"snap_name":"United Arab Emirates","alpha2":"AE","alpha3":"ARE","numeric":"784"},{"snap_name":"United Kingdom","alpha2":"GB","alpha3":"GBR","numeric":"826"},{"snap_name":"United States","alpha2":"US","alpha3":"USA","numeric":"840"}],"requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"43 countries. Identical list appears on the payout-countries help article under the older label 'Creator Midroll Ads within Stories'. The Creator Rewards FAQ (5909152630420) shows a shorter, older-looking generic list (37 countries; missing Colombia, Lebanon, Malaysia, Pakistan, Poland, Spain) — treated as stale; flagged for Ryan. Monetization Terms say the Eligible Regions list is in the 'Creator Rewards Guidelines', which we could not locate as a standalone page. Engine must map ISO codes to these names in a reviewed lookup table."},{"label":"FACT","rule_id":"ump.excluded_parties","version":1,"program":"unified_monetization_program","claim":"Snap employees/officers/directors (and of its affiliates), government entities and their affiliates, and members of a royal family are not eligible.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Self-attested condition."},{"label":"FACT","rule_id":"ump.followers_min","version":1,"program":"unified_monetization_program","claim":"Creators may be eligible for invitation if they have at least 50,000 followers.","value":50000,"unit":"followers","metric":"followers","operator":"gte","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Effective date not stated on the source page. Same 50,000 figure also appeared in the Dec 16, 2024 newsroom announcement."},{"label":"FACT","rule_id":"ump.invalid_activity_excluded","version":1,"program":"unified_monetization_program","claim":"Snap may exclude activity that artificially inflates views or engagement (bots, click farms, paid inducements, view trading) from Qualifying Activity and payments.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"content_policy","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"enrolled_creators","requirement_phase":"ongoing","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Qualitative."},{"label":"FACT","rule_id":"ump.invitation_only","version":1,"program":"unified_monetization_program","claim":"The Monetization Program is open by invitation only; meeting the criteria does not guarantee an invitation. Snap notifies invited creators by email.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"program_fact","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Effective date is the Monetization Terms effective date (February 1, 2025). Invitation cannot be computed from metrics; engine must report it as requires_user_confirmation. Help page also states Snap does not charge fees for invitation and no third party controls eligibility."},{"label":"FACT","rule_id":"ump.non_us_physical_location","version":1,"program":"unified_monetization_program","claim":"If you reside outside the United States, you (and any collaborator/contributor/administrator posting from your account) must be physically located outside the United States and within an Eligible Region when performing Qualifying Activity.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"enrolled_creators","requirement_phase":"ongoing","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Cannot be checked from metrics."},{"label":"FACT","rule_id":"ump.ongoing_spotlight_view_time_hours_28d_max_rewards","version":1,"program":"unified_monetization_program","claim":"Beginning May 7, 2026, creators already enrolled in the Monetization Program must maintain at least 100 hours of Total Spotlight View Time on their posts over the last 28 days to qualify for maximum Creator Rewards (tracked under 'Daily Rewards Eligibility' in Insights).","value":100,"unit":"hours","metric":"spotlight_view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"ongoing_condition","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":"2026-05-07","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":null,"applies_to":"enrolled_creators","requirement_phase":"ongoing","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Ongoing requirement for creators already enrolled in the Monetization Program; not an entry (invitation) requirement. The help article on tracking it says it 'applies to users currently enrolled in Snapchat's Ads Monetization Program.' Snap's wording is 'to qualify for maximum Creator Rewards'. Snap does not say what happens below 100 hours, so we must not state or imply that rewards stop. Also confirmed on help article 47748552848660."},{"label":"FACT","rule_id":"ump.original_advertiser_friendly_content","version":1,"program":"unified_monetization_program","claim":"Publish original, advertiser-friendly content compliant with Community Guidelines and Content Guidelines for Recommendation Eligibility.","value":true,"unit":"boolean","metric":null,"operator":null,"window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Qualitative; cannot be checked from metrics."},{"label":"FACT","rule_id":"ump.payment_formula_proprietary","version":1,"program":"unified_monetization_program","claim":"Payment amounts are determined by Snap's proprietary formula, which may consider post frequency and timing, number of ads distributed, use of Snapchat Creative Tools, and user engagement; in-app amounts are estimates.","value":"proprietary formula","unit":"text","metric":null,"operator":null,"window_days":null,"rule_type":"payout_term","status":"current","source_url":"https://www.snap.com/monetization-terms?lang=en-US","publisher":"Snap Inc. (snap.com legal terms)","verified_at":"2026-09-26","effective_date":"2025-02-01","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":null,"applies_to":"enrolled_creators","requirement_phase":"not_applicable","mvp_scope":"in_scope","related_rule_ids":[],"notes":"No public rate per view/hour exists in official sources. Engines must not estimate earnings."},{"label":"FACT","rule_id":"ump.revenue_source","version":1,"program":"unified_monetization_program","claim":"Snapchat places ads between Snaps in a Public Story or within a Spotlight, and creators in the program receive a share of revenue. Ads are served primarily based on time spent watching Stories and Spotlights.","value":"share of ad revenue from ads in Public Stories and Spotlight","unit":"text","metric":null,"operator":null,"window_days":null,"rule_type":"program_fact","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":null,"applies_to":"all","requirement_phase":"not_applicable","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Snap does not publish a revenue-share percentage or rate; payment amounts use a proprietary formula (Monetization Terms §3). Never state a rate."},{"label":"FACT","rule_id":"ump.snap_star_required","version":1,"program":"unified_monetization_program","claim":"Creator must be a Snap Star to be eligible for invitation.","value":true,"unit":"boolean","metric":"is_snap_star","operator":"is_true","window_days":null,"rule_type":"eligibility_condition","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":true,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Snap Star status is granted by Snap after application; a user may self-report it, but we cannot verify it. Treated as requires_user_confirmation."},{"label":"FACT","rule_id":"ump.spotlight_min_video_length_seconds","version":1,"program":"unified_monetization_program","claim":"For Spotlight videos to be eligible to earn revenue, they must be at least 30 seconds long.","value":30,"unit":"seconds","metric":"spotlight_video_length_seconds","operator":"gte","window_days":null,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"requires_user_confirmation":false,"supersedes":"ump.spotlight_min_video_length_2024@1","applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":[],"notes":"Per-video condition, not an account eligibility criterion. Effective date not stated. Supersedes the Dec 2024 announcement that Spotlight videos 'longer than 1 minute' could be monetized (ump.spotlight_min_video_length_2024). Classified as an entry-type rule per Ryan's 2026-09-26 fix; it is a per-video condition, so v1 calculators list it as a FACT and do not evaluate it."},{"label":"FACT","rule_id":"ump.spotlight_view_time_hours_28d_min","version":1,"program":"unified_monetization_program","claim":"At least 3,000 of the 15,000 hours of view time over the last 28 days must come from Spotlight.","value":3000,"unit":"hours","metric":"spotlight_view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","requires_user_confirmation":false,"supersedes":null,"applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.view_time_hours_28d_min"],"notes":"Entry (invitation) criterion from the same help-page edit as the 15,000-hour view-time rule. Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Distinct from the 100-hour ongoing threshold for already-enrolled creators (ump.ongoing_spotlight_view_time_hours_28d_max_rewards)."},{"label":"FACT","rule_id":"ump.view_time_hours_28d_min","version":1,"program":"unified_monetization_program","claim":"Achieve 15,000 hours of view time over the last 28 days.","value":15000,"unit":"hours","metric":"view_time_hours_28d","operator":"gte","window_days":28,"rule_type":"eligibility_threshold","status":"current","source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","verified_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","requires_user_confirmation":false,"supersedes":"ump.view_metric_any_of_2024@1","applies_to":"entry","requirement_phase":"entry","mvp_scope":"in_scope","related_rule_ids":["ump.view_metric_any_of_2024"],"notes":"Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Prior rule ump.view_metric_any_of_2024: one of 10 million Snap views, 1 million Spotlight views, or 12,000 hours of view time in the last 28 days. Source: Snap Newsroom, \"Snapchat Introduces New, Unified Monetization Program for Creators\", Dec 16, 2024, https://newsroom.snap.com/snapchat-new-creator-monetization, verified 2026-09-27. Whether the 15,000 hours count Stories and Spotlight combined is implied ('of those hours coming from Spotlight') but not defined on the page."}],"country_eligibility":[{"program":"unified_monetization_program","country":"US","listed":true,"rule_id":"ump.country_eligible"}]}}}},"GetRuleChangesOK":{"description":"Rule change FACTs.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/get_rule_changes.output.schema"},"example":{"tool":"get_rule_changes","api_version":"v1","notice":"HowToMakeMoneyOnSnapchat.com is an independent third party and is not affiliated with, endorsed by, or sponsored by Snap Inc. Snapchat is a trademark of Snap Inc.","generated_at":"2026-09-27T02:00:00Z","sources":[{"url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","publisher":"Snap Inc. (Snapchat Support)","title":null,"verified_at":"2026-09-27","supports_rule_ids":["ump.view_time_hours_28d_min","ump.spotlight_min_video_length_seconds","ump.ongoing_spotlight_view_time_hours_28d_max_rewards","ump.posting_frequency_current"]},{"url":"https://newsroom.snap.com/rewarding-authentic-creativity-on-spotlight","publisher":"Snap Inc. (Snap Newsroom)","title":null,"verified_at":"2026-09-26","supports_rule_ids":["recommendation_eligibility.wholly_ai_generated_spotlight"]}],"data_freshness":{"rules_db_version":"2026-09-28.1","generated_at":"2026-09-27T02:00:00Z","oldest_verified_at":"2026-09-26","newest_verified_at":"2026-09-27","stale_rule_ids":[],"policy":"Sources are re-checked daily; rules not re-verified within 7 days are listed as stale."},"since":"2026-01-01","until":"2026-09-27","changes":[{"label":"FACT","rule_id":"ump.posting_frequency_current","program":"unified_monetization_program","change_type":"retired","previous":null,"current":{"version":1,"value":null,"unit":"posts","status":"historical","verified_at":"2026-09-27","claim":"The posting-frequency (Consistency) requirements (at least 25 posts a month and posting on 10 of the last 28 days) were removed."},"source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","detected_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","effective_month":null,"notes":"Verified 2026-09-27 from archived Snap help snapshots and the Dec 16, 2024 Snap Newsroom post for the prior values (ump.posts_per_month_min_2024 and ump.active_days_28d_min_2024; https://newsroom.snap.com/snapchat-new-creator-monetization). Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap."},{"label":"FACT","rule_id":"ump.view_time_hours_28d_min","program":"unified_monetization_program","change_type":"value_changed","previous":{"version":1,"value":"one of 10 million Snap views, 1 million Spotlight views, or 12,000 hours of view time in the last 28 days","unit":"text","status":"historical","verified_at":"2026-09-27","claim":"(Historical, Dec 2024 criteria) Achieve one of the following in the last 28 days: 10 million Snap views, 1 million Spotlight views, or 12,000 hours of view time."},"current":{"version":1,"value":15000,"unit":"hours","status":"current","verified_at":"2026-09-27","claim":"Achieve 15,000 hours of view time over the last 28 days."},"source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","detected_at":"2026-09-27","effective_date":null,"effective_date_note":"not published by Snap","changed_after":"2026-02-10","changed_before":"2026-02-28","date_note":"per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap.","effective_month":null,"notes":"Changed between 2026-02-10 and 2026-02-28. Per archived Snap help page (Wayback Machine snapshots of support article 14669003687444 on 2026-02-10 and 2026-02-28); not announced by Snap. Prior rule ump.view_metric_any_of_2024: one of 10 million Snap views, 1 million Spotlight views, or 12,000 hours of view time in the last 28 days. Source: Snap Newsroom, \"Snapchat Introduces New, Unified Monetization Program for Creators\", Dec 16, 2024, https://newsroom.snap.com/snapchat-new-creator-monetization, verified 2026-09-27. Whether the 15,000 hours count Stories and Spotlight combined is implied ('of those hours coming from Spotlight') but not defined on the page."},{"label":"FACT","rule_id":"ump.ongoing_spotlight_view_time_hours_28d_max_rewards","program":"unified_monetization_program","change_type":"added","previous":null,"current":{"version":1,"value":100,"unit":"hours","status":"current","verified_at":"2026-09-26","claim":"Beginning May 7, 2026, creators already enrolled in the Monetization Program must maintain at least 100 hours of Total Spotlight View Time on their posts over the last 28 days to qualify for maximum Creator Rewards (tracked under 'Daily Rewards Eligibility' in Insights)."},"source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","detected_at":"2026-09-26","effective_date":"2026-05-07","changed_after":null,"changed_before":null,"date_note":null,"effective_month":null,"notes":"Ongoing requirement for creators already enrolled in the Monetization Program; not an entry (invitation) requirement. The help article on tracking it says it 'applies to users currently enrolled in Snapchat's Ads Monetization Program.' Snap's wording is 'to qualify for maximum Creator Rewards'. Snap does not say what happens below 100 hours, so we must not state or imply that rewards stop. Also confirmed on help article 47748552848660."},{"label":"FACT","rule_id":"recommendation_eligibility.wholly_ai_generated_spotlight","program":"recommendation_eligibility","change_type":"added","previous":null,"current":{"version":1,"value":true,"unit":"boolean","status":"current","verified_at":"2026-09-26","claim":"As of July 2026, wholly AI-generated videos are no longer eligible for recommendation on Spotlight; content enhanced or edited with Snapchat's own AI tools remains eligible."},"source_url":"https://newsroom.snap.com/rewarding-authentic-creativity-on-spotlight","detected_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":"Announced 2026-07-31; Snap gives the month, not a day.","effective_month":"2026-07","notes":"Announcement dated July 31, 2026 says 'As of this month' (i.e., July 2026); exact day not stated, so effective_date is null. Quality guideline page says ranking 'rewards authentic, human-made content over wholly AI-generated content created outside of Snapchat'."},{"label":"FACT","rule_id":"ump.spotlight_min_video_length_seconds","program":"unified_monetization_program","change_type":"value_changed","previous":{"version":1,"value":60,"unit":"seconds","status":"historical","verified_at":"2026-09-26","claim":"(Historical) Beginning February 1, 2025, eligible creators could monetize Spotlight videos longer than 1 minute."},"current":{"version":1,"value":30,"unit":"seconds","status":"current","verified_at":"2026-09-26","claim":"For Spotlight videos to be eligible to earn revenue, they must be at least 30 seconds long."},"source_url":"https://help.snapchat.com/hc/en-us/articles/14669003687444-About-Snapchat-s-Monetization-Program","detected_at":"2026-09-26","effective_date":null,"effective_date_note":"not published by Snap","changed_after":null,"changed_before":null,"date_note":null,"effective_month":null,"notes":"Per-video condition, not an account eligibility criterion. Effective date not stated. Supersedes the Dec 2024 announcement that Spotlight videos 'longer than 1 minute' could be monetized (ump.spotlight_min_video_length_2024). Classified as an entry-type rule per Ryan's 2026-09-26 fix; it is a per-video condition, so v1 calculators list it as a FACT and do not evaluate it."}],"next_cursor":null,"catalog_scope":{"mvp_in_force":49,"in_force_including_out_of_scope":61,"mvp_including_historical":58,"approved_total":71,"out_of_scope_programs":["creator_subscriptions","lens_creator_rewards"],"summary":"49 facts in MVP scope; 61 total including Creator Subscriptions, and Lens Creator Rewards; 58 in-scope records including historical"}}}}},"Error":{"description":"Predictable error with a machine-readable code and a human-readable fix.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.schema"}}}},"Unauthorized":{"description":"The API key is not valid (error.code = INVALID_API_KEY). Anonymous access is available without a key.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.schema"}}}},"RateLimited":{"description":"Rate limit exceeded (error.code = RATE_LIMITED).","headers":{"Retry-After":{"$ref":"#/components/headers/Retry-After"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimit-Limit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimit-Remaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimit-Reset"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.schema"}}}}},"schemas":{"Notice":{"description":"Non-affiliation notice included in every response.","type":"string","const":"HowToMakeMoneyOnSnapchat.com is an independent third party and is not affiliated with, endorsed by, or sponsored by Snap Inc. Snapchat is a trademark of Snap Inc."},"DateTime":{"type":"string","format":"date-time"},"Date":{"type":"string","format":"date"},"RuleId":{"type":"string","pattern":"^[a-z0-9_]+(\\.[a-z0-9_]+)+$","maxLength":120},"Source":{"type":"object","additionalProperties":false,"required":["url","publisher","verified_at","supports_rule_ids"],"properties":{"url":{"type":"string","format":"uri"},"publisher":{"type":"string"},"title":{"type":["string","null"]},"verified_at":{"$ref":"#/components/schemas/Date"},"supports_rule_ids":{"type":"array","items":{"$ref":"#/components/schemas/RuleId"}}}},"DataFreshness":{"type":"object","additionalProperties":false,"required":["rules_db_version","generated_at","oldest_verified_at","newest_verified_at","stale_rule_ids","policy"],"properties":{"rules_db_version":{"description":"Monotonic version of the published rules set. Pattern YYYY-MM-DD.n","type":"string","pattern":"^[0-9]{4}-[0-9]{2}-[0-9]{2}\\.[0-9]+$"},"generated_at":{"$ref":"#/components/schemas/DateTime"},"oldest_verified_at":{"type":["string","null"],"format":"date"},"newest_verified_at":{"type":["string","null"],"format":"date"},"stale_rule_ids":{"description":"Rules in this response whose verified_at is older than the staleness window stated in `policy`.","type":"array","items":{"$ref":"#/components/schemas/RuleId"}},"policy":{"type":"string","description":"Human-readable freshness policy, e.g. 'Sources are re-checked daily; rules not re-verified within 7 days are listed as stale.'"}}},"Envelope":{"description":"Fields present in every successful tool output.","type":"object","required":["tool","api_version","notice","generated_at","sources","data_freshness"],"properties":{"tool":{"type":"string"},"api_version":{"const":"v1"},"notice":{"$ref":"#/components/schemas/Notice"},"generated_at":{"$ref":"#/components/schemas/DateTime"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/Source"}},"data_freshness":{"$ref":"#/components/schemas/DataFreshness"},"warnings":{"type":"array","items":{"type":"string"}}}},"ProgramSlug":{"description":"Program identifier. Validated at runtime against programs present in the rules database; unknown values return UNKNOWN_PROGRAM. Examples: unified_monetization_program, snap_star, creator_subscriptions, brand_partnerships, payouts, tax, recommendation_eligibility, creator_monetization_policy, public_profile, lens_creator_rewards.","type":"string","pattern":"^[a-z0-9_]{2,64}$"},"EffectiveDateNote":{"description":"Present when effective_date is null because Snap did not publish a date. effective_date stays null.","const":"not published by Snap"},"IsoCountry":{"type":"object","additionalProperties":false,"required":["snap_name","alpha2","alpha3","numeric"],"properties":{"snap_name":{"type":"string"},"alpha2":{"type":"string"},"alpha3":{"type":"string"},"numeric":{"type":"string"}}},"RuleFact":{"description":"FACT: a rule record as stored in the versioned rules database (approved records only).","type":"object","additionalProperties":false,"required":["label","rule_id","version","program","claim","value","unit","status","source_url","publisher","verified_at","effective_date","requires_user_confirmation","applies_to","requirement_phase","mvp_scope","notes"],"properties":{"label":{"const":"FACT"},"rule_id":{"$ref":"#/components/schemas/RuleId"},"version":{"type":"integer","minimum":1},"program":{"$ref":"#/components/schemas/ProgramSlug"},"claim":{"type":"string"},"value":{"anyOf":[{"type":["number","string","boolean","null"]},{"type":"array","items":{"type":"string"}}]},"unit":{"type":"string"},"metric":{"type":["string","null"]},"operator":{"type":["string","null"],"enum":["gte","gt","lte","lt","eq","in","is_true",null]},"window_days":{"type":["integer","null"]},"rule_type":{"description":"Role of the rule, copied from the rules database. Omitted by older clients. Used to group answer pages.","type":["string","null"],"enum":["eligibility_threshold","eligibility_condition","ongoing_condition","payout_term","tax_term","content_policy","program_fact","program_status","supplementary_note",null]},"status":{"type":"string","enum":["current","historical","unverified"]},"source_url":{"type":"string","format":"uri"},"publisher":{"type":"string"},"verified_at":{"$ref":"#/components/schemas/Date"},"effective_date":{"type":["string","null"],"format":"date"},"effective_date_note":{"$ref":"#/components/schemas/EffectiveDateNote"},"changed_after":{"description":"Inclusive start of an observed change window when the source does not state a single effective_date. Null when unknown. Additive.","type":["string","null"],"format":"date"},"changed_before":{"description":"Inclusive end of an observed change window when the source does not state a single effective_date. Null when unknown. Additive.","type":["string","null"],"format":"date"},"date_note":{"description":"How changed_after and changed_before were established. Null when there is no window note. Not a substitute for source_url.","type":["string","null"]},"iso_countries":{"description":"ISO 3166-1 codes for each name in a country list, from the reviewed country map. Omitted unless this fact is a country list.","type":"array","items":{"$ref":"#/components/schemas/IsoCountry"}},"requires_user_confirmation":{"type":"boolean"},"supersedes":{"type":["string","null"]},"applies_to":{"type":"string","enum":["entry","enrolled_creators","all","not_applicable"]},"requirement_phase":{"type":"string","enum":["entry","ongoing","entry_and_ongoing","not_applicable"]},"mvp_scope":{"type":"string","enum":["in_scope","out_of_scope"]},"related_rule_ids":{"type":"array","items":{"type":"string"}},"notes":{"type":"string"}}},"CatalogScope":{"type":"object","additionalProperties":false,"description":"Counts computed from the approved rules database for one as-of date. mvp_in_force is the default requirements list. in_force_including_out_of_scope adds programs stored as out of scope. mvp_including_historical is every in-scope record, which is what the rule-change log lists.","required":["mvp_in_force","in_force_including_out_of_scope","mvp_including_historical","approved_total","out_of_scope_programs","summary"],"properties":{"mvp_in_force":{"type":"integer","minimum":0},"in_force_including_out_of_scope":{"type":"integer","minimum":0},"mvp_including_historical":{"type":"integer","minimum":0},"approved_total":{"type":"integer","minimum":0},"out_of_scope_programs":{"type":"array","items":{"type":"string"}},"summary":{"type":"string"}}},"get_monetization_requirements.output.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/get_monetization_requirements.output.schema.json","title":"get_monetization_requirements output","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/Envelope"}],"required":["tool","api_version","notice","generated_at","sources","data_freshness","programs","facts"],"properties":{"tool":{"const":"get_monetization_requirements"},"api_version":{"const":"v1"},"notice":{"$ref":"#/components/schemas/Notice"},"generated_at":{"$ref":"#/components/schemas/DateTime"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/Source"}},"data_freshness":{"$ref":"#/components/schemas/DataFreshness"},"warnings":{"type":"array","items":{"type":"string"}},"query":{"type":"object","description":"Echo of the effective filters.","additionalProperties":true},"programs":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["program","program_status","rule_ids"],"properties":{"program":{"$ref":"#/components/schemas/ProgramSlug"},"program_status":{"type":"string","enum":["active","historical","unknown"]},"rule_ids":{"type":"array","items":{"$ref":"#/components/schemas/RuleId"}}}}},"facts":{"type":"array","items":{"$ref":"#/components/schemas/RuleFact"}},"direct_answer":{"type":"string","description":"Answer-first lead built from entry-requirement facts included in this response. Omitted when those facts are absent."},"direct_answer_note":{"type":"string","description":"Optional sentence after the lead for unverified entry facts left out of it. Omitted when there are none."},"catalog_scope":{"$ref":"#/components/schemas/CatalogScope"},"country_eligibility":{"type":["array","null"],"items":{"type":"object","additionalProperties":false,"required":["program","country","listed","rule_id"],"properties":{"program":{"$ref":"#/components/schemas/ProgramSlug"},"country":{"type":"string"},"listed":{"type":["boolean","null"]},"rule_id":{"$ref":"#/components/schemas/RuleId"}}}}}},"error.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/error.schema.json","title":"Error response (all tools, REST and MCP)","type":"object","additionalProperties":false,"required":["error","notice"],"properties":{"notice":{"$ref":"#/components/schemas/Notice"},"error":{"type":"object","additionalProperties":false,"required":["code","message","fix","docs_url","request_id"],"properties":{"code":{"type":"string","enum":["INVALID_INPUT","PROGRAM_OUT_OF_SCOPE","MISSING_REQUIRED_FIELD","UNKNOWN_FIELD","VALUE_OUT_OF_RANGE","UNKNOWN_PROGRAM","UNKNOWN_METRIC","UNKNOWN_RULE_ID","INVALID_DATE","DATE_RANGE_INVALID","PAYLOAD_TOO_LARGE","RATE_LIMITED","INVALID_API_KEY","NO_RULES_AVAILABLE","UNSUPPORTED_API_VERSION","NOT_FOUND","METHOD_NOT_ALLOWED","INTERNAL_ERROR","SERVICE_UNAVAILABLE"]},"message":{"description":"What went wrong, human-readable.","type":"string","maxLength":500},"fix":{"description":"Exactly what the caller should change to succeed, human-readable.","type":"string","maxLength":500},"field":{"description":"JSON Pointer to the offending input field, if any.","type":["string","null"]},"allowed_values":{"type":["array","null"],"items":{"type":"string"}},"retry_after_seconds":{"type":["integer","null"],"minimum":0},"docs_url":{"type":"string","format":"uri"},"request_id":{"type":"string","maxLength":64}}}}},"get_monetization_requirements.input.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/get_monetization_requirements.input.schema.json","title":"get_monetization_requirements input","description":"FACT tool. Returns Snap's current creator-monetization requirements per program, each with source URL, verified_at, effective_date, status, applies_to (entry vs enrolled creators) and mvp_scope. Defaults to in-scope programs: unified_monetization_program, payouts, tax, snap_star, creator_monetization_policy, recommendation_eligibility, brand_partnerships, public_profile, plus historical records on request. Use check_eligibility/calculate_gap to compare a creator's metrics against the rules.","type":"object","additionalProperties":false,"properties":{"program":{"description":"Limit to one program. Omit for all programs.","anyOf":[{"$ref":"#/components/schemas/ProgramSlug"}]},"country":{"description":"Optional country filter for the country lookup. Accepts ISO 3166-1 alpha-2, alpha-3, or the English name.","type":"string","minLength":2,"maxLength":80},"include_unverified":{"type":"boolean","default":true,"description":"Include rules we could not verify (status=unverified). Default true so gaps in knowledge are visible."},"include_historical":{"type":"boolean","default":false},"include_out_of_scope":{"type":"boolean","default":false,"description":"Include programs outside the MVP scope (e.g., lens_creator_rewards, creator_subscriptions). Default false. Requesting an out-of-scope program with this false returns PROGRAM_OUT_OF_SCOPE."},"requirement_phase":{"description":"Optional filter.","type":"string","enum":["entry","ongoing","entry_and_ongoing","not_applicable"]},"as_of":{"description":"Return the rules that were in force on this date (uses version history). Default: today.","type":"string","format":"date"}}},"get_rule_changes.output.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/get_rule_changes.output.schema.json","title":"get_rule_changes output","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/Envelope"}],"required":["tool","api_version","notice","generated_at","sources","data_freshness","since","until","changes","next_cursor"],"properties":{"tool":{"const":"get_rule_changes"},"api_version":{"const":"v1"},"notice":{"$ref":"#/components/schemas/Notice"},"generated_at":{"$ref":"#/components/schemas/DateTime"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/Source"}},"data_freshness":{"$ref":"#/components/schemas/DataFreshness"},"warnings":{"type":"array","items":{"type":"string"}},"since":{"$ref":"#/components/schemas/Date"},"until":{"$ref":"#/components/schemas/Date"},"changes":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["label","rule_id","program","change_type","previous","current","source_url","detected_at","effective_date"],"properties":{"label":{"const":"FACT"},"rule_id":{"$ref":"#/components/schemas/RuleId"},"program":{"$ref":"#/components/schemas/ProgramSlug"},"change_type":{"type":"string","description":"How this record differs from the approved record it supersedes, or the type on an explicit change block. Baseline records are returned only in baseline.","enum":["added","value_changed","status_changed","retired","source_changed","baseline"]},"previous":{"type":["object","null"],"additionalProperties":false,"required":["version","value","unit","status","verified_at"],"properties":{"version":{"type":"integer"},"value":{"anyOf":[{"type":["number","string","boolean","null"]},{"type":"array","items":{"type":"string"}}]},"unit":{"type":"string"},"status":{"type":"string","enum":["current","historical","unverified"]},"verified_at":{"$ref":"#/components/schemas/Date"},"claim":{"type":"string"}}},"current":{"type":["object","null"],"additionalProperties":false,"required":["version","value","unit","status","verified_at"],"properties":{"version":{"type":"integer"},"value":{"anyOf":[{"type":["number","string","boolean","null"]},{"type":"array","items":{"type":"string"}}]},"unit":{"type":"string"},"status":{"type":"string","enum":["current","historical","unverified"]},"verified_at":{"$ref":"#/components/schemas/Date"},"claim":{"type":"string"}}},"source_url":{"type":"string","format":"uri"},"detected_at":{"$ref":"#/components/schemas/Date"},"effective_date":{"type":["string","null"],"format":"date"},"effective_date_note":{"$ref":"#/components/schemas/EffectiveDateNote"},"changed_after":{"description":"Inclusive start of an observed change window when the source does not state a single effective_date. Null when unknown. Additive.","type":["string","null"],"format":"date"},"changed_before":{"description":"Inclusive end of an observed change window when the source does not state a single effective_date. Null when unknown. Additive.","type":["string","null"],"format":"date"},"date_note":{"description":"How changed_after and changed_before were established. Null when there is no window note. Not a substitute for source_url.","type":["string","null"]},"effective_month":{"description":"Month-only announcement when Snap did not publish a day, YYYY-MM. Null when the change has a day or no month.","type":["string","null"],"pattern":"^[0-9]{4}-[0-9]{2}$"},"notes":{"type":"string"}}}},"baseline":{"description":"Initial-load records. Present only when include_baseline is true. Never included in changes or in change counts.","type":"array","items":{"type":"object","additionalProperties":false,"required":["label","rule_id","program","change_type","previous","current","source_url","detected_at","effective_date"],"properties":{"label":{"const":"FACT"},"rule_id":{"$ref":"#/components/schemas/RuleId"},"program":{"$ref":"#/components/schemas/ProgramSlug"},"change_type":{"const":"baseline"},"previous":{"type":["object","null"],"additionalProperties":false,"required":["version","value","unit","status","verified_at"],"properties":{"version":{"type":"integer"},"value":{"anyOf":[{"type":["number","string","boolean","null"]},{"type":"array","items":{"type":"string"}}]},"unit":{"type":"string"},"status":{"type":"string","enum":["current","historical","unverified"]},"verified_at":{"$ref":"#/components/schemas/Date"},"claim":{"type":"string"}}},"current":{"type":["object","null"],"additionalProperties":false,"required":["version","value","unit","status","verified_at"],"properties":{"version":{"type":"integer"},"value":{"anyOf":[{"type":["number","string","boolean","null"]},{"type":"array","items":{"type":"string"}}]},"unit":{"type":"string"},"status":{"type":"string","enum":["current","historical","unverified"]},"verified_at":{"$ref":"#/components/schemas/Date"},"claim":{"type":"string"}}},"source_url":{"type":"string","format":"uri"},"detected_at":{"$ref":"#/components/schemas/Date"},"effective_date":{"type":["string","null"],"format":"date"},"effective_date_note":{"$ref":"#/components/schemas/EffectiveDateNote"},"changed_after":{"type":["string","null"],"format":"date"},"changed_before":{"type":["string","null"],"format":"date"},"date_note":{"type":["string","null"]},"effective_month":{"type":["string","null"],"pattern":"^[0-9]{4}-[0-9]{2}$"},"notes":{"type":"string"}}}},"next_cursor":{"type":["string","null"]},"catalog_scope":{"$ref":"#/components/schemas/CatalogScope"}}},"get_rule_changes.input.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/get_rule_changes.input.schema.json","title":"get_rule_changes input","description":"FACT tool. Lists approved changes to Snap monetization rules. A change is a record that supersedes an approved earlier record and differs in value, status, or source, or a record with an explicit approved change block (added or retired). Baseline records (no supersedes and no change block) are omitted unless include_baseline is true, and they are never included in changes or in change counts. since and until filter on the change date: effective_date, else changed_before, else the last day of effective_month, else detected_at. They do not filter on verified_at.","type":"object","additionalProperties":false,"required":["since"],"properties":{"since":{"type":"string","format":"date","description":"Inclusive lower bound on the change date: effective_date, else changed_before, else the last day of effective_month, else detected_at."},"until":{"type":"string","format":"date","description":"Inclusive upper bound on that same change date. Default: the UTC date of the request."},"program":{"$ref":"#/components/schemas/ProgramSlug"},"limit":{"type":"integer","minimum":1,"maximum":200,"default":50},"cursor":{"type":"string","maxLength":200,"description":"Opaque pagination cursor from a previous response."},"include_baseline":{"type":"boolean","default":false,"description":"When true, also return baseline records in baseline. Baseline records are never included in changes."}}},"EvaluableProgram":{"description":"Programs the calculation tools evaluate in v1. Other in-scope programs (payouts, tax, snap_star, creator_monetization_policy, recommendation_eligibility, brand_partnerships) are served as FACTs by get_monetization_requirements; Snap Star status is evaluated as a prerequisite inside unified_monetization_program.","type":"string","enum":["unified_monetization_program"],"default":"unified_monetization_program"},"CreatorMetrics":{"description":"Metrics supplied by the caller (the creator or their agent). We never look metrics up ourselves; Snap offers no public analytics for arbitrary usernames. All fields optional; missing fields produce `unknowns`, never guesses. Data minimization: no age, birthdate, name, or username is accepted; creator age is never stored.","type":"object","additionalProperties":false,"minProperties":1,"properties":{"followers":{"type":"integer","minimum":0,"maximum":10000000000},"view_time_hours_28d":{"description":"Total view time in hours over the last 28 days, as shown in Snapchat Insights.","type":"number","minimum":0,"maximum":1000000000},"spotlight_view_time_hours_28d":{"description":"Spotlight view time in hours over the last 28 days.","type":"number","minimum":0,"maximum":1000000000},"meets_age_requirement":{"description":"Whether the creator meets the age requirement (18 or the local age of majority). true/false as stated by the caller; null = unknown and returns requires_user_confirmation. Data minimization: we never ask for or store a creator's age or birthdate.","type":["boolean","null"]},"country":{"description":"Country of residence. ISO 3166-1 alpha-2 (US), alpha-3 (USA), or the English name on the reviewed country map (United States). Unlisted territories stay unknown.","type":"string","minLength":2,"maxLength":80},"is_snap_star":{"description":"Self-reported Snap Star status. Cannot be verified by us; treated as a user confirmation.","type":"boolean"},"posts_per_month":{"type":"integer","minimum":0,"maximum":100000},"active_posting_days_28d":{"type":"integer","minimum":0,"maximum":28}}},"Confirmations":{"description":"Caller's answers to qualitative requirements (requires_user_confirmation rules), keyed by rule id. We record the answer as given and never verify it.","type":"array","maxItems":50,"uniqueItems":true,"items":{"type":"object","additionalProperties":false,"required":["rule_id","confirmed"],"properties":{"rule_id":{"$ref":"#/components/schemas/RuleId"},"confirmed":{"type":"boolean"}}}},"AlreadyEnrolled":{"description":"Set true only if the creator is already enrolled in the Monetization Program. Default false: only entry (invitation) requirements are evaluated. When true, ongoing requirements for enrolled creators are reported in a separate section.","type":"boolean","default":false},"check_eligibility.input.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/check_eligibility.input.schema.json","title":"check_eligibility input","description":"CALCULATION tool. Creator metrics in; pass/fail per published entry requirement of the Monetization Program out, plus unknowns and requirements needing the creator's own confirmation. Never returns an 'eligible' verdict: the result is meets_published_criteria / does_not_meet_published_criteria / unknown, with a fixed disclaimer that invitation is at Snap's discretion. Ongoing requirements for enrolled creators are reported separately only when already_enrolled=true.","type":"object","additionalProperties":false,"required":["metrics"],"properties":{"program":{"$ref":"#/components/schemas/EvaluableProgram"},"metrics":{"$ref":"#/components/schemas/CreatorMetrics"},"confirmations":{"$ref":"#/components/schemas/Confirmations"},"already_enrolled":{"$ref":"#/components/schemas/AlreadyEnrolled"},"metrics_as_of":{"type":"string","format":"date","description":"Date the metrics were read from Insights."}}},"OngoingNote":{"const":"Ongoing requirements apply only to creators already enrolled in the Monetization Program. Snap says the 100-hour Spotlight view-time requirement is needed to qualify for maximum Creator Rewards; Snap does not say that rewards stop below it."},"MetricName":{"description":"Closed vocabulary of creator metrics the engines understand.","type":"string","enum":["followers","view_time_hours_28d","spotlight_view_time_hours_28d","meets_age_requirement","country","is_snap_star","posts_per_month","active_posting_days_28d"]},"Unknown":{"description":"A requirement we could not evaluate, with the reason and what would resolve it.","type":"object","additionalProperties":false,"required":["rule_id","reason","how_to_resolve"],"properties":{"rule_id":{"$ref":"#/components/schemas/RuleId"},"reason":{"type":"string","enum":["missing_input","rule_unverified","requires_user_confirmation","not_computable_from_metrics","rule_value_not_numeric"]},"missing_metric":{"anyOf":[{"$ref":"#/components/schemas/MetricName"},{"type":"null"}]},"how_to_resolve":{"type":"string"}}},"check_eligibility.output.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/check_eligibility.output.schema.json","title":"check_eligibility output","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/Envelope"}],"required":["tool","api_version","notice","generated_at","sources","data_freshness","program","already_enrolled","summary","requirements","ongoing_requirements","unknowns","facts"],"properties":{"tool":{"const":"check_eligibility"},"api_version":{"const":"v1"},"notice":{"$ref":"#/components/schemas/Notice"},"generated_at":{"$ref":"#/components/schemas/DateTime"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/Source"}},"data_freshness":{"$ref":"#/components/schemas/DataFreshness"},"warnings":{"type":"array","items":{"type":"string"}},"program":{"$ref":"#/components/schemas/ProgramSlug"},"already_enrolled":{"type":"boolean"},"summary":{"type":"object","additionalProperties":false,"required":["published_criteria_status","disclaimer","pass_count","fail_count","unknown_count","requires_confirmation_count"],"description":"Entry requirements only. published_criteria_status rule: does_not_meet_published_criteria if any requirement is fail or user_denied; otherwise unknown if any is unknown or requires_user_confirmation; otherwise meets_published_criteria. There is deliberately no 'eligible' verdict.","properties":{"published_criteria_status":{"type":"string","enum":["meets_published_criteria","does_not_meet_published_criteria","unknown"]},"disclaimer":{"type":"string","enum":["Meets the published criteria; invitation to the Monetization Program is at Snap's discretion.","Does not meet the published criteria based on the inputs provided; invitation to the Monetization Program is at Snap's discretion.","Cannot determine whether the published criteria are met from the inputs provided (some requirements are unknown or need the creator's confirmation); invitation to the Monetization Program is at Snap's discretion."]},"pass_count":{"type":"integer","minimum":0},"fail_count":{"type":"integer","minimum":0},"unknown_count":{"type":"integer","minimum":0},"requires_confirmation_count":{"type":"integer","minimum":0}},"allOf":[{"if":{"properties":{"published_criteria_status":{"const":"meets_published_criteria"}}},"then":{"properties":{"disclaimer":{"const":"Meets the published criteria; invitation to the Monetization Program is at Snap's discretion."}}}},{"if":{"properties":{"published_criteria_status":{"const":"does_not_meet_published_criteria"}}},"then":{"properties":{"disclaimer":{"const":"Does not meet the published criteria based on the inputs provided; invitation to the Monetization Program is at Snap's discretion."}}}},{"if":{"properties":{"published_criteria_status":{"const":"unknown"}}},"then":{"properties":{"disclaimer":{"const":"Cannot determine whether the published criteria are met from the inputs provided (some requirements are unknown or need the creator's confirmation); invitation to the Monetization Program is at Snap's discretion."}}}}]},"ongoing_requirements":{"description":"null unless already_enrolled=true.","type":["object","null"],"additionalProperties":false,"required":["note","requirements"],"properties":{"note":{"$ref":"#/components/schemas/OngoingNote"},"requirements":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["label","rule_id","rule_version","claim","rule_status","outcome","threshold","input_value"],"properties":{"label":{"const":"CALCULATION"},"rule_id":{"$ref":"#/components/schemas/RuleId"},"rule_version":{"type":"integer"},"claim":{"type":"string"},"rule_status":{"type":"string","enum":["current","unverified"]},"metric":{"anyOf":[{"$ref":"#/components/schemas/MetricName"},{"type":"null"}]},"operator":{"type":["string","null"],"enum":["gte","gt","lte","lt","eq","in","is_true",null]},"threshold":{"type":"object","additionalProperties":false,"required":["value","unit"],"properties":{"value":{"anyOf":[{"type":["number","string","boolean","null"]},{"type":"array","items":{"type":"string"}}]},"unit":{"type":"string"}}},"input_value":{"type":["number","string","boolean","null"]},"outcome":{"type":"string","enum":["pass","fail","unknown","requires_user_confirmation","user_confirmed","user_denied"]},"explanation":{"type":"string","maxLength":300}}}}}},"requirements":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["label","rule_id","rule_version","claim","rule_status","outcome","threshold","input_value"],"properties":{"label":{"const":"CALCULATION"},"rule_id":{"$ref":"#/components/schemas/RuleId"},"rule_version":{"type":"integer"},"claim":{"type":"string"},"rule_status":{"type":"string","enum":["current","unverified"]},"metric":{"anyOf":[{"$ref":"#/components/schemas/MetricName"},{"type":"null"}]},"operator":{"type":["string","null"],"enum":["gte","gt","lte","lt","eq","in","is_true",null]},"threshold":{"type":"object","additionalProperties":false,"required":["value","unit"],"properties":{"value":{"anyOf":[{"type":["number","string","boolean","null"]},{"type":"array","items":{"type":"string"}}]},"unit":{"type":"string"}}},"input_value":{"type":["number","string","boolean","null"]},"outcome":{"type":"string","enum":["pass","fail","unknown","requires_user_confirmation","user_confirmed","user_denied"]},"explanation":{"type":"string","maxLength":300}}}},"unknowns":{"type":"array","items":{"$ref":"#/components/schemas/Unknown"}},"facts":{"type":"array","items":{"$ref":"#/components/schemas/RuleFact"}}}},"calculate_gap.input.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/calculate_gap.input.schema.json","title":"calculate_gap input","description":"CALCULATION tool. Exact shortfall for each numeric entry requirement of the Monetization Program: absolute amount and percent complete, and which gap is the binding constraint. Ongoing requirements for enrolled creators are reported separately only when already_enrolled=true.","type":"object","additionalProperties":false,"required":["metrics"],"properties":{"program":{"$ref":"#/components/schemas/EvaluableProgram"},"metrics":{"$ref":"#/components/schemas/CreatorMetrics"},"already_enrolled":{"$ref":"#/components/schemas/AlreadyEnrolled"},"include_recommendations":{"type":"boolean","default":true}}},"NumericMetricName":{"type":"string","enum":["followers","view_time_hours_28d","spotlight_view_time_hours_28d","posts_per_month","active_posting_days_28d"]},"Recommendation":{"description":"RECOMMENDATION: our suggestion, never a Snap rule. Short and structured; the calling agent writes prose.","type":"object","additionalProperties":false,"required":["label","objective","reason","linked_rule_id","measurable_target","assumptions","risks"],"properties":{"label":{"const":"RECOMMENDATION"},"order":{"description":"1 = address first (the binding constraint). An ordering, not a score.","type":"integer","minimum":1},"objective":{"type":"string","maxLength":200},"reason":{"type":"string","maxLength":300},"linked_rule_id":{"$ref":"#/components/schemas/RuleId"},"measurable_target":{"type":"object","additionalProperties":false,"required":["metric","value","unit"],"properties":{"metric":{"$ref":"#/components/schemas/MetricName"},"value":{"type":"number"},"unit":{"type":"string"},"by_date":{"type":["string","null"],"format":"date"}}},"assumptions":{"type":"array","items":{"type":"string"},"minItems":1},"risks":{"type":"array","items":{"type":"string"}},"realism_note":{"type":["string","null"],"description":"Plain statement when the math is unrealistic, e.g. 'Required pace is 20x your observed pace.'"}}},"calculate_gap.output.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/calculate_gap.output.schema.json","title":"calculate_gap output","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/Envelope"}],"required":["tool","api_version","notice","generated_at","sources","data_freshness","program","already_enrolled","gaps","ongoing_gaps","binding_constraint","unknowns","facts","recommendations"],"properties":{"tool":{"const":"calculate_gap"},"api_version":{"const":"v1"},"notice":{"$ref":"#/components/schemas/Notice"},"generated_at":{"$ref":"#/components/schemas/DateTime"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/Source"}},"data_freshness":{"$ref":"#/components/schemas/DataFreshness"},"warnings":{"type":"array","items":{"type":"string"}},"program":{"$ref":"#/components/schemas/ProgramSlug"},"already_enrolled":{"type":"boolean"},"gaps":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["label","rule_id","rule_version","metric","unit","threshold","current","met","shortfall_absolute","percent_complete","percent_complete_uncapped","formula"],"properties":{"label":{"const":"CALCULATION"},"rule_id":{"$ref":"#/components/schemas/RuleId"},"rule_version":{"type":"integer"},"metric":{"$ref":"#/components/schemas/NumericMetricName"},"unit":{"type":"string"},"window_days":{"type":["integer","null"]},"threshold":{"type":"number"},"current":{"type":"number"},"met":{"type":"boolean"},"shortfall_absolute":{"type":"number","minimum":0,"description":"max(threshold - current, 0)"},"surplus_absolute":{"type":"number","minimum":0,"description":"max(current - threshold, 0)"},"percent_complete":{"type":"number","minimum":0,"maximum":100,"description":"min(current / threshold, 1) * 100, rounded to 2 dp"},"percent_complete_uncapped":{"type":"number","minimum":0},"formula":{"type":"string"}}},"description":"Entry requirements only."},"ongoing_gaps":{"description":"null unless already_enrolled=true.","type":["object","null"],"additionalProperties":false,"required":["note","gaps"],"properties":{"note":{"$ref":"#/components/schemas/OngoingNote"},"gaps":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["label","rule_id","rule_version","metric","unit","threshold","current","met","shortfall_absolute","percent_complete","percent_complete_uncapped","formula"],"properties":{"label":{"const":"CALCULATION"},"rule_id":{"$ref":"#/components/schemas/RuleId"},"rule_version":{"type":"integer"},"metric":{"$ref":"#/components/schemas/NumericMetricName"},"unit":{"type":"string"},"window_days":{"type":["integer","null"]},"threshold":{"type":"number"},"current":{"type":"number"},"met":{"type":"boolean"},"shortfall_absolute":{"type":"number","minimum":0,"description":"max(threshold - current, 0)"},"surplus_absolute":{"type":"number","minimum":0,"description":"max(current - threshold, 0)"},"percent_complete":{"type":"number","minimum":0,"maximum":100,"description":"min(current / threshold, 1) * 100, rounded to 2 dp"},"percent_complete_uncapped":{"type":"number","minimum":0},"formula":{"type":"string"}}}}}},"binding_constraint":{"type":["object","null"],"additionalProperties":false,"required":["rule_id","metric","percent_complete","rule"],"properties":{"rule_id":{"$ref":"#/components/schemas/RuleId"},"metric":{"$ref":"#/components/schemas/NumericMetricName"},"percent_complete":{"type":"number"},"rule":{"const":"unmet requirement with the lowest percent_complete; ties broken by rule_id"}}},"unknowns":{"type":"array","items":{"$ref":"#/components/schemas/Unknown"}},"facts":{"type":"array","items":{"$ref":"#/components/schemas/RuleFact"}},"recommendations":{"type":"array","items":{"$ref":"#/components/schemas/Recommendation"}}}},"calculate_growth_pace.input.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/calculate_growth_pace.input.schema.json","title":"calculate_growth_pace input","description":"CALCULATION tool. Required daily and weekly pace to close each numeric gap within target_days, with a linear scenario plus alternatives and labeled assumptions. A projection, never a prediction.","type":"object","additionalProperties":false,"required":["metrics","target_days"],"properties":{"program":{"$ref":"#/components/schemas/EvaluableProgram"},"metrics":{"$ref":"#/components/schemas/CreatorMetrics"},"already_enrolled":{"$ref":"#/components/schemas/AlreadyEnrolled"},"target_days":{"type":"integer","minimum":1,"maximum":730},"observed_daily_change":{"description":"Optional recent average daily change per metric (caller-supplied, may be negative) for comparing required vs. current pace.","type":"object","additionalProperties":false,"properties":{"followers":{"type":"number","minimum":-1000000000,"maximum":1000000000},"view_time_hours_28d":{"type":"number","minimum":-1000000000,"maximum":1000000000},"spotlight_view_time_hours_28d":{"type":"number","minimum":-1000000000,"maximum":1000000000},"posts_per_month":{"type":"number","minimum":-1000000000,"maximum":1000000000},"active_posting_days_28d":{"type":"number","minimum":-1000000000,"maximum":1000000000}}},"metrics_to_pace":{"type":"array","items":{"$ref":"#/components/schemas/NumericMetricName"},"uniqueItems":true,"maxItems":5}}},"calculate_growth_pace.output.schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://howtomakemoneyonsnapchat.com/schemas/v1/calculate_growth_pace.output.schema.json","title":"calculate_growth_pace output","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/Envelope"}],"required":["tool","api_version","notice","generated_at","sources","data_freshness","program","already_enrolled","target_days","target_date","paces","ongoing_paces","projection_disclaimer","unknowns","facts","recommendations"],"properties":{"tool":{"const":"calculate_growth_pace"},"api_version":{"const":"v1"},"notice":{"$ref":"#/components/schemas/Notice"},"generated_at":{"$ref":"#/components/schemas/DateTime"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/Source"}},"data_freshness":{"$ref":"#/components/schemas/DataFreshness"},"warnings":{"type":"array","items":{"type":"string"}},"program":{"$ref":"#/components/schemas/ProgramSlug"},"target_days":{"type":"integer"},"target_date":{"$ref":"#/components/schemas/Date"},"already_enrolled":{"type":"boolean"},"paces":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["rule_id","metric","metric_kind","current","threshold","gap","scenarios"],"properties":{"rule_id":{"$ref":"#/components/schemas/RuleId"},"metric":{"$ref":"#/components/schemas/NumericMetricName"},"metric_kind":{"type":"string","enum":["cumulative","rolling_window"]},"window_days":{"type":["integer","null"]},"current":{"type":"number"},"threshold":{"type":"number"},"gap":{"type":"number","minimum":0},"already_met":{"type":"boolean"},"scenarios":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["label","name","computable","required_daily","required_weekly","unit","formula","assumptions"],"properties":{"label":{"const":"CALCULATION"},"name":{"type":"string","enum":["linear","compound","rolling_window_replacement"],"description":"linear: constant absolute daily increase (cumulative metrics). compound: constant daily % growth (cumulative metrics; not computable when current = 0). rolling_window_replacement: for rolling-window metrics (e.g. 28-day view time), the new daily average needed so the window total reaches the threshold by target day, assuming days rolling out were at the current daily average."},"computable":{"type":"boolean"},"required_daily":{"type":["number","null"]},"required_weekly":{"type":["number","null"]},"required_daily_growth_rate_pct":{"type":["number","null"],"description":"compound scenario only"},"unit":{"type":"string"},"formula":{"type":"string"},"assumptions":{"type":"array","items":{"type":"string"},"minItems":1},"not_computable_reason":{"type":["string","null"]}}},"minItems":1},"observed_daily_change":{"type":["number","null"]},"required_to_observed_ratio":{"type":["number","null"],"description":"linear required_daily / observed_daily_change; null if observed not supplied or <= 0."}}},"description":"Entry requirements only."},"ongoing_paces":{"description":"null unless already_enrolled=true.","type":["object","null"],"additionalProperties":false,"required":["note","paces"],"properties":{"note":{"$ref":"#/components/schemas/OngoingNote"},"paces":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["rule_id","metric","metric_kind","current","threshold","gap","scenarios"],"properties":{"rule_id":{"$ref":"#/components/schemas/RuleId"},"metric":{"$ref":"#/components/schemas/NumericMetricName"},"metric_kind":{"type":"string","enum":["cumulative","rolling_window"]},"window_days":{"type":["integer","null"]},"current":{"type":"number"},"threshold":{"type":"number"},"gap":{"type":"number","minimum":0},"already_met":{"type":"boolean"},"scenarios":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["label","name","computable","required_daily","required_weekly","unit","formula","assumptions"],"properties":{"label":{"const":"CALCULATION"},"name":{"type":"string","enum":["linear","compound","rolling_window_replacement"],"description":"linear: constant absolute daily increase (cumulative metrics). compound: constant daily % growth (cumulative metrics; not computable when current = 0). rolling_window_replacement: for rolling-window metrics (e.g. 28-day view time), the new daily average needed so the window total reaches the threshold by target day, assuming days rolling out were at the current daily average."},"computable":{"type":"boolean"},"required_daily":{"type":["number","null"]},"required_weekly":{"type":["number","null"]},"required_daily_growth_rate_pct":{"type":["number","null"],"description":"compound scenario only"},"unit":{"type":"string"},"formula":{"type":"string"},"assumptions":{"type":"array","items":{"type":"string"},"minItems":1},"not_computable_reason":{"type":["string","null"]}}},"minItems":1},"observed_daily_change":{"type":["number","null"]},"required_to_observed_ratio":{"type":["number","null"],"description":"linear required_daily / observed_daily_change; null if observed not supplied or <= 0."}}}}}},"projection_disclaimer":{"const":"Projections show the pace required under stated assumptions. They are not predictions of what will happen."},"unknowns":{"type":"array","items":{"$ref":"#/components/schemas/Unknown"}},"facts":{"type":"array","items":{"$ref":"#/components/schemas/RuleFact"}},"recommendations":{"type":"array","items":{"$ref":"#/components/schemas/Recommendation"}}}}}},"x-mcp":{"transport":"streamable-http","endpoint":"/mcp","canonical_url":"https://howtomakemoneyonsnapchat.com/mcp","auth":"anonymous read-only access, or an optional free API key (Authorization Bearer or X-API-Key) for a higher rate limit. No email. OAuth 2.1 only if authenticated tiers are added later (requires Ryan's approval).","tools":["get_monetization_requirements","get_rule_changes","check_eligibility","calculate_gap","calculate_growth_pace"],"server_info_description":"Independent; not affiliated with Snap Inc. Canonical host https://howtomakemoneyonsnapchat.com."},"x-limits":{"max_request_body_bytes":16384,"anonymous_requests_per_window":60,"anonymous_window_seconds":60,"anonymous_requests_per_day":5000,"anonymous_daily_window_seconds":86400,"key_requests_per_window":600,"key_window_seconds":60,"key_requests_per_day":50000,"key_daily_window_seconds":86400,"key_issue_per_day":5,"anonymous_rate_limit":"60 requests per 60 seconds and 5000 requests per day per anonymous client. Free keys are 600 requests per 60 seconds and 50000 requests per day. Override with Worker vars RATE_LIMIT_REQUESTS, RATE_LIMIT_WINDOW_SECONDS, RATE_LIMIT_DAILY_REQUESTS, RATE_LIMIT_DAILY_WINDOW_SECONDS, RATE_LIMIT_KEY_REQUESTS, RATE_LIMIT_KEY_WINDOW_SECONDS, RATE_LIMIT_KEY_DAILY_REQUESTS, RATE_LIMIT_KEY_DAILY_WINDOW_SECONDS, KEY_ISSUE_PER_DAY, and MAX_BODY_BYTES."}}