[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6GY0M3PHFZQF9CQFW28PCQF":3,"skill-same:01M6GY0M3PHFZQF9CQFW28PCQF":79},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":16,"sourceHtmlUrl":17,"categories":18,"keywords":19,"publishedAt":37,"linkOnly":38,"markdownContent":39,"markdownBody":40,"frontMatter":41,"refName":42,"commitSha":43,"skillDirectory":44,"forksCount":45,"repositoryHtmlUrl":46,"repositoryHomepageUrl":6,"ownerHtmlUrl":47,"ownerBlogUrl":48,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6GY0M3PHFZQF9CQFW28PCQF","compute-contribution-margin-per-unit",null,"Use when deciding whether extra volume or a special order is worth taking. Computes contribution margin from price minus variable cost and applies it to short-run decisions and scarce capacity.","jiayaoqijia\u002Fcryptoskill","jiayaoqijia","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1453879?v=4","01M6GMYTX7Q7S504VC6E756ENR","YQ","01M6GMYV1QKJ1CC75MTTGT9PR0",81,"MIT","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-compute-contribution-margin-per-unit\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-compute-contribution-margin-per-unit\u002FSKILL.md",[],[20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],"compute contribution margin per unit","margin","unit","compute","contribution","when","capacity","special order","it","price","volume","cost","use","short","decisions","extra","run","2026-11-10 10:12:30",false,"---\nname: compute-contribution-margin-per-unit\ndescription: Use when deciding whether extra volume or a special order is worth taking. Computes contribution margin from price minus variable cost and applies it to short-run decisions and scarce capacity.\n---\n\n# Compute contribution margin per unit\n\nContribution margin is what one more unit adds after its own variable cost. Fixed cost is already sunk for a short-run decision, so the question is never \"does this cover everything\" but \"does this add anything\".\n\n## Procedure\n\n1. Separate variable cost (materials, per-unit fulfilment, payment fees, usage) from fixed cost (rent, salaried staff, the platform fee).\n2. Compute contribution per unit = price - variable cost. Price $20.00, variable cost $12.00, contribution $8.00.\n3. Compute the contribution ratio = contribution \u002F price = 8\u002F20 = 40%.\n4. Judge an incremental order on contribution only: a special order at $15.00 against a normal $20.00 still adds $3.00 per unit, so it is profitable if it does not displace normal sales or consume scarce capacity.\n5. Add capacity as a second constraint when it binds. Rank by contribution per machine hour, not per unit:\n\n       ```\n       python3 -c \"from decimal import Decimal as D; print('A', D('8')\u002FD('0.5'), 'B', D('30')\u002FD('2.0'))\"\n       # A 16\u002Fhour vs B 15\u002Fhour -> A wins on the scarce resource\n       ```\n\n6. Never price below variable cost, even for a strategic order; that is a real cash loss on every unit and the floor in `set-a-minimum-viable-price-floor`.\n7. Total contribution for the period = contribution per unit * units; deduct fixed cost once at the end to reach operating profit.\n8. Compute contribution in integer minor units; a float variable cost per unit multiplied across thousands of units drifts and can flip the decision near the floor.\n9. Re-check the split as volume grows, because some \"fixed\" costs step up and become semi-variable at a threshold.\n10. Report the decision as contribution per unit and per constrained resource, not as a blended margin percentage.\n\n## Pitfalls\n\n- Treating allocated overhead as a variable cost, which makes a valid incremental order look unprofitable.\n- Ranking by margin percentage when a scarce resource should rank by contribution per hour.\n- Taking an incremental order that displaces full-price sales.\n- Pricing below variable cost and calling it strategic; no volume fixes it.\n- Blending contribution across products with different cost structure.\n- Float variable costs that flip the sign of the decision near the floor.\n\n## Verification\n\n    ```\n    python3 -c \"from decimal import Decimal as D; print(D('20')-D('12'))\"\n    # 8.00 -> $8.00 contribution per unit at a $20 price and $12 variable cost\n    ```\n\nPass when the variable cost is separated from fixed and both the per-unit and per-resource contribution are shown. Report contribution per unit, per constrained resource, and whether fixed cost remains covered.\n","# Compute contribution margin per unit\n\nContribution margin is what one more unit adds after its own variable cost. Fixed cost is already sunk for a short-run decision, so the question is never \"does this cover everything\" but \"does this add anything\".\n\n## Procedure\n\n1. Separate variable cost (materials, per-unit fulfilment, payment fees, usage) from fixed cost (rent, salaried staff, the platform fee).\n2. Compute contribution per unit = price - variable cost. Price $20.00, variable cost $12.00, contribution $8.00.\n3. Compute the contribution ratio = contribution \u002F price = 8\u002F20 = 40%.\n4. Judge an incremental order on contribution only: a special order at $15.00 against a normal $20.00 still adds $3.00 per unit, so it is profitable if it does not displace normal sales or consume scarce capacity.\n5. Add capacity as a second constraint when it binds. Rank by contribution per machine hour, not per unit:\n\n       ```\n       python3 -c \"from decimal import Decimal as D; print('A', D('8')\u002FD('0.5'), 'B', D('30')\u002FD('2.0'))\"\n       # A 16\u002Fhour vs B 15\u002Fhour -> A wins on the scarce resource\n       ```\n\n6. Never price below variable cost, even for a strategic order; that is a real cash loss on every unit and the floor in `set-a-minimum-viable-price-floor`.\n7. Total contribution for the period = contribution per unit * units; deduct fixed cost once at the end to reach operating profit.\n8. Compute contribution in integer minor units; a float variable cost per unit multiplied across thousands of units drifts and can flip the decision near the floor.\n9. Re-check the split as volume grows, because some \"fixed\" costs step up and become semi-variable at a threshold.\n10. Report the decision as contribution per unit and per constrained resource, not as a blended margin percentage.\n\n## Pitfalls\n\n- Treating allocated overhead as a variable cost, which makes a valid incremental order look unprofitable.\n- Ranking by margin percentage when a scarce resource should rank by contribution per hour.\n- Taking an incremental order that displaces full-price sales.\n- Pricing below variable cost and calling it strategic; no volume fixes it.\n- Blending contribution across products with different cost structure.\n- Float variable costs that flip the sign of the decision near the floor.\n\n## Verification\n\n    ```\n    python3 -c \"from decimal import Decimal as D; print(D('20')-D('12'))\"\n    # 8.00 -> $8.00 contribution per unit at a $20 price and $12 variable cost\n    ```\n\nPass when the variable cost is separated from fixed and both the per-unit and per-resource contribution are shown. Report contribution per unit, per constrained resource, and whether fixed cost remains covered.\n",{"name":5,"description":7},"main","3df1d0d67b30ff15236561f8c0f9f06d33f42dfd","skills\u002Fpayments\u002F0xklen-compute-contribution-margin-per-unit",17,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia","https:\u002F\u002Feth2030.com","Hardcore infra. Building @alt-research and applied cryptography.","2026-11-14 02:27:51",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add jiayaoqijia\u002Fcryptoskill --skill compute-contribution-margin-per-unit",{"tool":57,"command":58},"bunx","bunx skills add jiayaoqijia\u002Fcryptoskill --skill compute-contribution-margin-per-unit",{"tool":60,"command":61},"pnpm","pnpm dlx skills add jiayaoqijia\u002Fcryptoskill --skill compute-contribution-margin-per-unit","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-compute-contribution-margin-per-unit\u002FSKILL.md",true,[65,69,75],{"path":66,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":16},"LICENSE","许可证",1063,{"path":70,"resourceType":71,"resourceTypeDesc":72,"sizeBytes":73,"sourceHtmlUrl":74},"SOURCE.md","REFERENCE","参考文档",362,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-compute-contribution-margin-per-unit\u002FSOURCE.md",{"path":76,"resourceType":71,"resourceTypeDesc":72,"sizeBytes":77,"sourceHtmlUrl":78},"TRUST.auto.yaml",2217,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-compute-contribution-margin-per-unit\u002FTRUST.auto.yaml",[80,108,131,149,162,172],{"skillNo":81,"name":82,"nameZh":6,"description":83,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":84,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":37},"01M712C436EQYE43342Q4E7GG1","recipe-performance","Diagnose a specific MetaMask user flow's real-app performance and Sentry critical-user-flow telemetry with deterministic mm-harness recipes. Use for CUF boundaries, cold\u002Fwarm\u002Fbackground-resume behavior, latency regressions, lifecycle tags, duplicate or blocking network requests, long tasks, layout\u002Fpaint cost, screen redraws, React rerenders, or browser trace analysis where tests alone cannot prove the real app.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fwallets\u002Fmetamask-official-recipe-performance\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fwallets\u002Fmetamask-official-recipe-performance\u002FSKILL.md",[],[88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107],"performance","recipe performance","recipe","mm","sentry","harness","app","deterministic","recipes","flow","cold","critical","analysis","tasks","react","browser","layout","screen","network","metamask",{"skillNo":109,"name":110,"nameZh":6,"description":111,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":112,"licenseFileUrl":113,"sourceHtmlUrl":114,"categories":115,"keywords":116,"publishedAt":37},"01M70XT2F8A5CQZ81JBP98KSW3","mexc-spot-websocket","MEXC Spot WebSocket workflows for public streams, protobuf handling, depth maintenance, listen keys, and private streams without exposing API keys.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-websocket\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-websocket\u002FSKILL.md",[],[117,118,119,120,121,122,123,124,125,126,127,128,129,130],"mexc spot websocket","spot","websocket","api","workflows","public","listen","streams","depth","keys","for","api keys","maintenance","protobuf",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":112,"licenseFileUrl":135,"sourceHtmlUrl":136,"categories":137,"keywords":138,"publishedAt":37},"01M70XT0MBXN3WZY1BKN0CPNKR","mexc-spot-rest","MEXC Spot REST workflows for public data, signed account requests, orders, wallet\u002Fadmin actions, and secure signing without exposing API keys.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-rest\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-rest\u002FSKILL.md",[],[139,118,140,141,142,143,144,128,127,126,145,146,147,122,148,121,120],"mexc spot rest","REST","admin","signing","Wallet","requests","actions","secure","data","orders",{"skillNo":150,"name":151,"nameZh":6,"description":152,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":112,"licenseFileUrl":153,"sourceHtmlUrl":154,"categories":155,"keywords":156,"publishedAt":37},"01M70XSYSVZ2N0N91XCAR2CAK0","mexc-futures-websocket","MEXC Futures WebSocket workflows for public streams, private account\u002Forder\u002Fposition streams, ping\u002Fpong, subscriptions, and depth maintenance.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-futures-websocket\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-futures-websocket\u002FSKILL.md",[],[157,158,119,159,160,129,127,161,125,124,122,121],"mexc futures websocket","futures","position","ping","subscriptions",{"skillNo":163,"name":164,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":165,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":37},"01M6H0ZWHVE5W04WG2DKQE2SQC","0xklen-version-and-refresh-sanctions-lists","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-version-and-refresh-sanctions-lists\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-version-and-refresh-sanctions-lists\u002FSKILL.md",[],[169,170,171],"refresh","0xklen version and refresh sanctions lists","version",{"skillNo":173,"name":174,"nameZh":6,"description":175,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":176,"sourceHtmlUrl":177,"categories":178,"keywords":179,"publishedAt":37},"01M6H0Z28Q3R8J0S799GJQWXM3","verify-tests-cover-changed-lines","Use when a PR adds code that the existing suite may not exercise. Measures patch coverage — the share of newly changed lines hit by tests — before approving.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-verify-tests-cover-changed-lines\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-verify-tests-cover-changed-lines\u002FSKILL.md",[],[180,181,182,183,184,185,186,32,187,188,189],"tests","cover","verify tests cover changed lines","verify","coverage","pr","exercise","patch","code","share"]