import{d as I,Y as A,b3 as d,b as u,aD as N,c as p,bJ as j,a as e,k as x,af as C,t as r,l as t,i as n,F as P,p as R,ah as q,o as h}from"./Co0rzPff.js";import{j as m,i as s}from"./z-xUYPp7.js";import{u as $}from"./DN-g_sLF.js";import{u as B}from"./CdDJKVfF.js";const W={class:"markdown-body"},F={class:"final-result"},g="Information about the Rewards Program of Modrinth, an open source modding platform focused on Minecraft.",z=I({__name:"cmp-info",async setup(U){var v,y,b;let i,f;$({title:"Rewards Program Information - Modrinth",description:g,ogTitle:"Rewards Program Information",ogDescription:g});const l=A(d().format("YYYY-MM-DD")),M=u(()=>d(l.value)),w=u(()=>M.value.endOf("month")),D=u(()=>w.value.add(60,"days")),{data:c}=([i,f]=N(()=>B("payout/platform_revenue",()=>q("payout/platform_revenue",{apiVersion:3}))),i=await i,f(),i),T=(v=c.value)==null?void 0:v.all_time,k=((b=(y=c.value)==null?void 0:y.data)==null?void 0:b.slice(0,5))??[];return(V,o)=>(h(),p("div",W,[o[14]||(o[14]=j('
Last modified: Feb 20, 2025
This page was created for transparency for how the rewards program works on Modrinth. Feel free to join our Discord or email support@modrinth.com if you have any questions!
This document is provided for informational purposes only and does not constitute a legal agreement. Modrinth makes no representations or warranties as to the accuracy, completeness, or reliability of the information contained herein.
We collect ad revenue on our website and app through our ad network Adrinth, which is powered by Aditude. We then distribute this ad revenue to creators.
The advertising revenue of the entire website and app is split 75% to creators and 25% to Modrinth.
The creator allotment to the pool is decided by how many page views and in-app downloads your project receives (user profiles are not used in this calculation). Each page view and in-app download counts as a "point". Then, the money is distributed based on each author's point earnings daily.
For example, consider this test scenario (all numbers are fake):
In this scenario, the earnings for each creator and Modrinth would be as follows:
Page views are counted when a legitimate browser views a project page. In-app downloads when a user logged into the launcher downloads a project. Project downloads alongside modpack downloads are counted equally. In each category, Modrinth actively removes botted downloads and page views at our own discretion. If users are caught botting, they will be permanently banned from using Modrinth's services.
You can view your page views and project downloads in your analytics dashboard.
This section covers some common concerns people have about our monetization program. If you have more, feel free to join our Discord or contact support.
No. All creators who upload to Modrinth automatically will receive funds as according to the above algorithm. However, if you would like to withdraw money from your account, you must enroll by adding your payment information.
Right now, you can use PayPal or Venmo to withdraw money from your Modrinth account. Gift card withdrawal is also available. We are working on more methods to withdraw money from your account. There are fees to withdraw money from your Modrinth account—see the revenue page in your dashboard for more information.
Modrinth receives ad revenue from our ad providers on a NET 60 day basis. Due to this, not all revenue is immediately available to withdraw. We pay creators as soon as we receive the money from our ad providers, which is 60 days after the last day of each month.
To understand when revenue becomes available, you can use this calculator to estimate when revenue earned on a specific date will be available for withdrawal. Please be advised that all dates within this calculator are represented at 00:00 UTC.
',23)),e("table",null,[o[6]||(o[6]=e("thead",null,[e("tr",null,[e("th",null,"Timeline"),e("th",null,"Date")])],-1)),e("tbody",null,[e("tr",null,[o[2]||(o[2]=e("td",null,"Revenue earned on",-1)),e("td",null,[x(e("input",{id:"revenue-date-picker","onUpdate:modelValue":o[0]||(o[0]=a=>l.value=a),type:"date"},null,512),[[C,l.value]]),o[1]||(o[1]=e("noscript",null,"(JavaScript must be enabled for the date picker to function, example date: 2024-07-15) ",-1))])]),e("tr",null,[o[3]||(o[3]=e("td",null,"End of the month",-1)),e("td",null,r(t(m)(w.value)),1)]),o[5]||(o[5]=e("tr",null,[e("td",null,"NET 60 policy applied"),e("td",null,"+ 60 days")],-1)),e("tr",F,[o[4]||(o[4]=e("td",null,"Available for withdrawal",-1)),e("td",null,r(t(m)(D.value)),1)])])]),o[15]||(o[15]=e("h3",null,"How do I know Modrinth is being transparent about revenue?",-1)),e("p",null,[o[7]||(o[7]=n(" We aim to be as transparent as possible with creator revenue. All of our code is open source, including our ")),o[8]||(o[8]=e("a",{href:"https://github.com/modrinth/code/blob/main/apps/labrinth/src/queue/payouts.rs#L598"}," revenue distribution system",-1)),o[9]||(o[9]=n(". We also have an ")),o[10]||(o[10]=e("a",{href:"https://api.modrinth.com/v3/payout/platform_revenue"},"API route",-1)),o[11]||(o[11]=n(" to query the exact daily advertising revenue for the site - so far, creators on Modrinth have earned a total of ")),e("strong",null,r(t(s)(t(T))),1),o[12]||(o[12]=n(" in ad revenue. "))]),e("table",null,[o[13]||(o[13]=e("thead",null,[e("tr",null,[e("th",null,"Date"),e("th",null,"Revenue"),e("th",null,"Creator Revenue (75%)"),e("th",null,"Modrinth's Cut (25%)")])],-1)),e("tbody",null,[(h(!0),p(P,null,R(t(k),a=>(h(),p("tr",{key:a.time},[e("td",null,r(t(m)(t(d).unix(a.time))),1),e("td",null,r(t(s)(Number(a.revenue)+Number(a.creator_revenue))),1),e("td",null,r(t(s)(Number(a.creator_revenue))),1),e("td",null,r(t(s)(Number(a.revenue))),1)]))),128))])]),o[16]||(o[16]=e("small",null,[n("Modrinth's total ad revenue in the previous 5 days, for the entire dataset, use the aforementioned "),e("a",{href:"https://api.modrinth.com/v3/payout/platform_revenue"},"API route"),n(".")],-1))]))}});export{z as default};