This page discusses Rated’s methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.
There are two distinct parts in computing missed consensus rewards for validators, and these are missed rewards that happen owing to (i) missed proposals and (ii) missed attestations, such that:
There will be times wherein validators miss proposing on slots they are assigned to. Aside from penalties, this will correspond to missed CL rewards that they would have gotten if these validators were able to fulfil their duty.Rated estimates this opportunity cost by taking the average of the consensus layer proposer duty rewards for the epoch where the slot proposal was missed. As such the calculation is as follows:
An epoch-level average is taken because conditions and parameters are set on a per-epoch basis by the network (e.g. proposer assignments, number of active and participating validators). Therefore the missed slot is under the same conditions as the rest in the epoch and we can take a credible comparison.In the extreme scenario where there is a serious inactivity incident and there are several epochs without blocks, we fall back to the global average (i.e. since the start of the beacon chain).
This approach defines the Rated methodology insofar as the post-Altair era is concerned.Our approach to calculating missed attestation rewards is to first count how many attestation duties were wrongly fulfilled and then apply the spec based methodology on what these would have translated to in terms of rewards were they performed appropriately.
The products of these operations are then multiplied by the respective network-wide fulfilment rates of each duty (i.e. the proportion of validators correctly fulfilling that duty) for the period, except for the missed sync committee signatures wherein the uptime does not factor in the calculation.
It goes without saying that completely missing an attestation counts towards a missed head vote, target vote, and source vote altogether.
According to the Phase 0 Beacon Chain spec, missed rewards were more tightly coupled with penalties. It’s worth revisiting how the EF’s documentation formalizes rewards and penalties.
The penalties for missing the head, target, and source votes are equal to the rewards the attester would have received had they submitted them. This means that instead of having the rewards added to their balance, they have an equal value removed from their balance.
Given all of the above, there is a simple and elegant way in which we can capture missed attestation rewards on the Beacon Chain for any given validator index in any given epoch:
consensus_missed_attestation_rewards=∣penalties∣
While the calculation is relatively straightforward, there is an important distinction to make here. The above stated approach is strictly encompassing of missed_rewards, when missed rewards are understood as a wholly different set frompenalties, in a way that:
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Rated | docs","colors":{"primary":"#0091FF","light":"#0880EA","dark":"#0091FF"},"logo":{"light":"https://mintcdn.com/rated/xA_7tu5wozIsFhjJ/images/logo/light.svg?fit=max\u0026auto=format\u0026n=xA_7tu5wozIsFhjJ\u0026q=85\u0026s=4ac034202bfaa36f3452acae5c7fbf4b","dark":"https://mintcdn.com/rated/xA_7tu5wozIsFhjJ/images/logo/dark.svg?fit=max\u0026auto=format\u0026n=xA_7tu5wozIsFhjJ\u0026q=85\u0026s=1c62c310521fda792738ad305c22ee47"},"favicon":"https://mintcdn.com/rated/xA_7tu5wozIsFhjJ/favicon.svg?fit=max\u0026auto=format\u0026n=xA_7tu5wozIsFhjJ\u0026q=85\u0026s=c087a335155baa58dd525606eb79ee10","api":{"openapi":"openapi.json","mdx":{"auth":{"method":"bearer"},"server":"https://api.rated.network"}},"background":{"image":"https://mintcdn.com/rated/xA_7tu5wozIsFhjJ/images/bg-dark.svg?fit=max\u0026auto=format\u0026n=xA_7tu5wozIsFhjJ\u0026q=85\u0026s=a607f4c006afbbd6ab90720c522f0196","decoration":"gradient","color":{"light":"#F5FAFF","dark":"#0F1B2D"}},"navbar":{"links":[{"href":"https://rated.network","label":"Home"},{"href":"mailto:[email protected]","label":"Get in touch"}],"primary":{"type":"button","label":"Console","href":"https://console.rated.network"}},"footer":{"socials":{"x":"https://x.com/ratedw3b","discord":"https://bit.ly/ratediscord","github":"https://github.com/rated-network","telegram":"https://t.me/eliasimos"}},"seo":{"metatags":{"description":"Comprehensive documentation for Rated Network - the leading blockchain validator analytics platform. Access APIs, explore methodologies, and analyze validator performance across Ethereum, Solana, and more.","keywords":"blockchain analytics, validator performance, Ethereum staking, Solana validators, blockchain API, validator effectiveness, staking rewards, crypto analytics, blockchain data","author":"Rated Network","robots":"index, follow","googlebot":"index, follow","language":"en","category":"Technology","distribution":"global","coverage":"Worldwide","HandheldFriendly":"True","MobileOptimized":"320","theme-color":"#0091FF","color-scheme":"light dark","twitter:card":"summary_large_image","twitter:site":"@ratedw3b","twitter:creator":"@ratedw3b","apple-mobile-web-app-capable":"yes","apple-mobile-web-app-status-bar-style":"default","apple-mobile-web-app-title":"Rated Docs"},"indexing":"all"},"fonts":{"heading":{"family":"Space Grotesk"},"body":{"family":"Rubik"}},"styling":{"eyebrows":"section","latex":true},"integrations":{"posthog":{"apiKey":"phc_K4ZquErKWuSfOvy4rWU23khMSkT5xVXxUryNt2TMZBv","apiHost":"https://eu.i.posthog.com"}},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"rated","hasAudioNarration":false,"actualSubdomain":"rated","customDomains":["docs.rated.network"],"gitSource":{"type":"github","owner":"rated-network","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae4a115d51aac6e910aa249","collectionId":"437d0f4e-3e96-41a7-9ac6-a738f135e6d5","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae4a115d51aac6e910aa249"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae4a115d51aac6e910aa249","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API","count":185},{"language":"default","tag":"Endpoints","count":149},{"language":"default","tag":"Ethereum","count":136},{"language":"default","tag":"Solana","count":64},{"language":"default","tag":"Documentation","count":58},{"language":"default","tag":"Explorer","count":31},{"language":"default","tag":"Methodologies","count":26},{"language":"default","tag":"Rewards","count":26},{"language":"default","tag":"Performance","count":20},{"language":"default","tag":"Network Views","count":19}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation","slug":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation","pageMetadata":{"title":"Consensus missed rewards computation","description":"This page discusses Rated's methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.","href":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"This page discusses Rated’s methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,annotation:`annotation`,blockquote:`blockquote`,code:`code`,em:`em`,li:`li`,math:`math`,mfrac:`mfrac`,mi:`mi`,mo:`mo`,mrow:`mrow`,mspace:`mspace`,mtext:`mtext`,ol:`ol`,p:`p`,pre:`pre`,semantics:`semantics`,span:`span`,strong:`strong`,..._provideComponents(),...props.components},{CodeBlock,Frame,Heading,Note,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`There are two distinct parts in computing missed consensus rewards for validators, and these are missed rewards that happen owing to (i) missed proposals and (ii) missed attestations, such that:`}),`\n`,_jsx(Frame,{className:`text-grey-800 dark:mint-text-white mint-text-xs mint-overflow-x-auto lg:mint-justify-start mint-justify-center`,children:_jsx(_components.span,{className:`katex-display`,children:_jsxs(_components.span,{className:`katex`,children:[_jsx(_components.span,{className:`katex-mathml`,children:_jsx(_components.math,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`,children:_jsxs(_components.semantics,{children:[_jsxs(_components.mrow,{children:[_jsx(_components.mtext,{children:`consensus_missed_rewards`}),_jsx(_components.mo,{children:`=`}),_jsx(_components.mtext,{children:`consensus_missed_proposal_rewards`}),_jsx(_components.mo,{children:`+`}),_jsx(_components.mtext,{children:`consensus_missed_attestation_rewards`})]}),_jsx(_components.annotation,{encoding:`application/x-tex`,children:`\\\\text{consensus\\\\_missed\\\\_rewards} = \\\\text{consensus\\\\_missed\\\\_proposal\\\\_rewards} + \\\\text{consensus\\\\_missed\\\\_attestation\\\\_rewards}`})]})})}),_jsxs(_components.span,{className:`katex-html`,\"aria-hidden\":`true`,children:[_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord text`,children:_jsx(_components.span,{className:`mord`,children:`consensus_missed_rewards`})}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}}),_jsx(_components.span,{className:`mrel`,children:`=`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord text`,children:_jsx(_components.span,{className:`mord`,children:`consensus_missed_proposal_rewards`})}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2222em`}}),_jsx(_components.span,{className:`mbin`,children:`+`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2222em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord text`,children:_jsx(_components.span,{className:`mord`,children:`consensus_missed_attestation_rewards`})})]})]})]})})}),`\n`,_jsx(_components.p,{children:`In the following sections, we examine the methodology in calculating each of the two components.`}),`\n`,_jsx(Heading,{level:`2`,id:`consensus-missed-proposal-rewards`,children:`Consensus missed proposal rewards`}),`\n`,_jsxs(_components.p,{children:[`There will be times wherein validators miss proposing on slots they are assigned to. Aside from penalties, this will correspond to missed `,_jsx(_components.code,{children:`CL`}),` rewards that they would have gotten if these validators were able to fulfil their duty.`]}),`\n`,_jsx(_components.p,{children:`Rated estimates this opportunity cost by taking the average of the consensus layer proposer duty rewards for the epoch where the slot proposal was missed. As such the calculation is as follows:`}),`\n`,_jsx(Frame,{className:`text-grey-800 dark:mint-text-white mint-text-sm mint-overflow-x-auto lg:mint-justify-start mint-justify-center`,children:_jsx(_components.span,{className:`katex-display`,children:_jsxs(_components.span,{className:`katex`,children:[_jsx(_components.span,{className:`katex-mathml`,children:_jsx(_components.math,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`,children:_jsxs(_components.semantics,{children:[_jsxs(_components.mrow,{children:[_jsx(_components.mtext,{children:`consensus_missed_proposal_rewards`}),_jsx(_components.mo,{children:`=`}),_jsxs(_components.mfrac,{children:[_jsxs(_components.mrow,{children:[_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`u`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mo,{stretchy:`false`,children:`(`}),_jsx(_components.mtext,{children:`consensus_rewards_per_epoch_block`}),_jsx(_components.mo,{stretchy:`false`,children:`)`})]}),_jsx(_components.mtext,{children:`proposed_blocks_in_epoch`})]})]}),_jsx(_components.annotation,{encoding:`application/x-tex`,children:`\\\\text{consensus\\\\_missed\\\\_proposal\\\\_rewards} = \\\\frac{sum(\\\\text{consensus\\\\_rewards\\\\_per\\\\_epoch\\\\_block})}{\\\\text{proposed\\\\_blocks\\\\_in\\\\_epoch}}`})]})})}),_jsxs(_components.span,{className:`katex-html`,\"aria-hidden\":`true`,children:[_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord text`,children:_jsx(_components.span,{className:`mord`,children:`consensus_missed_proposal_rewards`})}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}}),_jsx(_components.span,{className:`mrel`,children:`=`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`2.446em`,verticalAlign:`-0.996em`}}),_jsxs(_components.span,{className:`mord`,children:[_jsx(_components.span,{className:`mopen nulldelimiter`}),_jsx(_components.span,{className:`mfrac`,children:_jsxs(_components.span,{className:`vlist-t vlist-t2`,children:[_jsxs(_components.span,{className:`vlist-r`,children:[_jsxs(_components.span,{className:`vlist`,style:{height:`1.45em`},children:[_jsxs(_components.span,{style:{top:`-2.314em`},children:[_jsx(_components.span,{className:`pstrut`,style:{height:`3em`}}),_jsx(_components.span,{className:`mord`,children:_jsx(_components.span,{className:`mord text`,children:_jsx(_components.span,{className:`mord`,children:`proposed_blocks_in_epoch`})})})]}),_jsxs(_components.span,{style:{top:`-3.23em`},children:[_jsx(_components.span,{className:`pstrut`,style:{height:`3em`}}),_jsx(_components.span,{className:`frac-line`,style:{borderBottomWidth:`0.04em`}})]}),_jsxs(_components.span,{style:{top:`-3.7em`},children:[_jsx(_components.span,{className:`pstrut`,style:{height:`3em`}}),_jsxs(_components.span,{className:`mord`,children:[_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mord mathnormal`,children:`u`}),_jsx(_components.span,{className:`mord mathnormal`,children:`m`}),_jsx(_components.span,{className:`mopen`,children:`(`}),_jsx(_components.span,{className:`mord text`,children:_jsx(_components.span,{className:`mord`,children:`consensus_rewards_per_epoch_block`})}),_jsx(_components.span,{className:`mclose`,children:`)`})]})]})]}),_jsx(_components.span,{className:`vlist-s`,children:``})]}),_jsx(_components.span,{className:`vlist-r`,children:_jsx(_components.span,{className:`vlist`,style:{height:`0.996em`},children:_jsx(_components.span,{})})})]})}),_jsx(_components.span,{className:`mclose nulldelimiter`})]})]})]})]})})}),`\n`,_jsx(_components.p,{children:`An epoch-level average is taken because conditions and parameters are set on a per-epoch basis by the network (e.g. proposer assignments, number of active and participating validators). Therefore the missed slot is under the same conditions as the rest in the epoch and we can take a credible comparison.`}),`\n`,_jsx(_components.p,{children:`In the extreme scenario where there is a serious inactivity incident and there are several epochs without blocks, we fall back to the global average (i.e. since the start of the beacon chain).`}),`\n`,_jsx(Heading,{level:`2`,id:`consensus-missed-attestation-rewards`,children:`Consensus missed attestation rewards`}),`\n`,_jsx(_components.p,{children:_jsx(_components.em,{children:`This approach defines the Rated methodology insofar as the post-Altair era is concerned.`})}),`\n`,_jsx(_components.p,{children:`Our approach to calculating missed attestation rewards is to first count how many attestation duties were wrongly fulfilled and then apply the spec based methodology on what these would have translated to in terms of rewards were they performed appropriately.`}),`\n`,_jsx(Frame,{className:`text-grey-800 dark:mint-text-white mint-text-sm mint-overflow-x-auto lg:mint-justify-start mint-justify-center`,children:_jsx(_components.span,{className:`katex-display`,children:_jsxs(_components.span,{className:`katex`,children:[_jsx(_components.span,{className:`katex-mathml`,children:_jsx(_components.math,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`,children:_jsxs(_components.semantics,{children:[_jsxs(_components.mrow,{children:[_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`u`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`w`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mo,{children:`=`}),_jsx(_components.mi,{children:`h`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`v`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`w`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mspace,{linebreak:`newline`}),_jsx(_components.mo,{children:`+`}),_jsx(_components.mtext,{children:`\\xA0`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`u`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`v`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`w`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mspace,{linebreak:`newline`}),_jsx(_components.mo,{children:`+`}),_jsx(_components.mtext,{children:`\\xA0`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`g`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`v`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`w`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mspace,{linebreak:`newline`}),_jsx(_components.mo,{children:`+`}),_jsx(_components.mtext,{children:`\\xA0`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`y`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`w`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{children:`s`})]}),_jsx(_components.annotation,{encoding:`application/x-tex`,children:`consensus\\\\_missed\\\\_attestation\\\\_rewards = head\\\\_vote\\\\_missed\\\\_rewards \\\\\\\\\n+ \\\\ source\\\\_vote\\\\_missed\\\\_rewards \\\\\\\\\n+ \\\\ target\\\\_vote\\\\_missed\\\\_rewards \\\\\\\\\n+ \\\\ sync\\\\_committee\\\\_missed\\\\_rewards`})]})})}),_jsxs(_components.span,{className:`katex-html`,\"aria-hidden\":`true`,children:[_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord mathnormal`,children:`co`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord mathnormal`,children:`se`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mord mathnormal`,children:`u`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`sse`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,children:`tt`}),_jsx(_components.span,{className:`mord mathnormal`,children:`es`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`i`}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0269em`},children:`w`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}}),_jsx(_components.span,{className:`mrel`,children:`=`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord mathnormal`,children:`h`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0359em`},children:`v`}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`sse`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0269em`},children:`w`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`})]}),_jsx(_components.span,{className:`mspace newline`}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord`,children:`+`}),_jsx(_components.span,{className:`mspace`,children:`\\xA0`}),_jsx(_components.span,{className:`mord mathnormal`,children:`so`}),_jsx(_components.span,{className:`mord mathnormal`,children:`u`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`ce`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0359em`},children:`v`}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`sse`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0269em`},children:`w`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`})]}),_jsx(_components.span,{className:`mspace newline`}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord`,children:`+`}),_jsx(_components.span,{className:`mspace`,children:`\\xA0`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0359em`},children:`g`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0359em`},children:`v`}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`sse`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0269em`},children:`w`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`})]}),_jsx(_components.span,{className:`mspace newline`}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord`,children:`+`}),_jsx(_components.span,{className:`mspace`,children:`\\xA0`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0359em`},children:`sy`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord mathnormal`,children:`c`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`co`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mmi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`tt`}),_jsx(_components.span,{className:`mord mathnormal`,children:`ee`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`sse`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0269em`},children:`w`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`})]})]})]})})}),`\n`,_jsx(_components.p,{children:`Diving a little deeper into the methodology, recall that the attestation duties wherein a missed reward event can happen are the following:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`source vote: the validator has made a timely vote for the correct source checkpoint`}),`\n`,_jsx(_components.li,{children:`target vote: the validator has made a timely vote for the correct target checkpoint`}),`\n`,_jsx(_components.li,{children:`head vote: the validator has made a timely vote for the correct head block`}),`\n`,_jsx(_components.li,{children:`sync committee reward: the validator has participated in a sync committee`}),`\n`]}),`\n`,_jsx(_components.p,{children:`Our calculation starts by aggregating the count of these misses over a given epoch-based time-period.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`count`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`missed_source_votes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`count`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`missed_target_votes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`count`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`missed_head_votes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`count`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`missed_sync_committee_signatures`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`We then take these counts and multiply them by their respective base reward weights according to the Altair spec.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`count`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`missed_source_votes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 14`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`/`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`64`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` base_reward`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`count`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`missed_target_votes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 26`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`/`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`64`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` base_reward`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`count`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`missed_head_votes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 14`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`/`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`64`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` base_reward`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`count`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`missed_sync_committee_signatures`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 2`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`/`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`64`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` *`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` active_validators`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` *`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` base_reward`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` /`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`32`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`512`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`The products of these operations are then multiplied by the respective network-wide fulfilment rates of each duty (i.e. the proportion of validators correctly fulfilling that duty) for the period, except for the missed sync committee signatures wherein the uptime does not factor in the calculation.`}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`It goes without saying that completely missing an attestation counts towards a missed head vote, target vote, and source vote altogether.`})}),`\n`,_jsx(Heading,{level:`3`,id:`consensus-missed-rewards-pre-altair`,children:`Consensus missed rewards pre-Altair`}),`\n`,_jsxs(_components.p,{children:[`According to the Phase 0 Beacon Chain spec, missed rewards were more tightly coupled with penalties. It’s worth revisiting how the `,_jsx(_components.a,{href:`https://ethereum.org/en/developers/docs/consensus-mechanisms/pos/rewards-and-penalties/#penalties`,children:`EF’s documentation`}),` formalizes rewards and penalties.`]}),`\n`,_jsxs(_components.blockquote,{children:[`\n`,_jsxs(_components.p,{children:[`The penalties for missing the head, target, and source votes are equal to the rewards the attester would have received had they submitted them. `,_jsx(_components.strong,{children:`This means that instead of having the rewards added to their balance, they have an equal value removed from their balance`}),`.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Given all of the above, there is a simple and elegant way in which we can capture missed attestation rewards on the Beacon Chain for any given validator index in any given epoch:`}),`\n`,_jsx(Frame,{className:`text-grey-800 dark:mint-text-white mint-text-sm mint-overflow-x-auto lg:mint-justify-start mint-justify-center`,children:_jsx(_components.span,{className:`katex-display`,children:_jsxs(_components.span,{className:`katex`,children:[_jsx(_components.span,{className:`katex-mathml`,children:_jsx(_components.math,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`,children:_jsxs(_components.semantics,{children:[_jsxs(_components.mrow,{children:[_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`u`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`w`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mo,{children:`=`}),_jsx(_components.mi,{mathvariant:`normal`,children:`∣`}),_jsx(_components.mi,{children:`p`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`l`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{mathvariant:`normal`,children:`∣`})]}),_jsx(_components.annotation,{encoding:`application/x-tex`,children:`consensus\\\\_missed\\\\_attestation\\\\_rewards = |penalties|`})]})})}),_jsxs(_components.span,{className:`katex-html`,\"aria-hidden\":`true`,children:[_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord mathnormal`,children:`co`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord mathnormal`,children:`se`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mord mathnormal`,children:`u`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`sse`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,children:`tt`}),_jsx(_components.span,{className:`mord mathnormal`,children:`es`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`i`}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0269em`},children:`w`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}}),_jsx(_components.span,{className:`mrel`,children:`=`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1em`,verticalAlign:`-0.25em`}}),_jsx(_components.span,{className:`mord`,children:`∣`}),_jsx(_components.span,{className:`mord mathnormal`,children:`p`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,children:`na`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0197em`},children:`l`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`i`}),_jsx(_components.span,{className:`mord mathnormal`,children:`es`}),_jsx(_components.span,{className:`mord`,children:`∣`})]})]})]})})}),`\n`,_jsxs(Warning,{children:[_jsxs(_components.p,{children:[`While the calculation is relatively straightforward, there is an important distinction to make here. The above stated approach is strictly encompassing of `,_jsx(_components.code,{children:`missed_rewards`}),`, when missed rewards are understood as a wholly different set from`,_jsx(_components.code,{children:`penalties`}),`, in a way that:`]}),_jsx(Frame,{className:`text-grey-800 dark:mint-text-white mint-text-sm mint-overflow-x-auto lg:mint-justify-start mint-justify-center`,children:_jsx(_components.span,{className:`katex-display`,children:_jsxs(_components.span,{className:`katex`,children:[_jsx(_components.span,{className:`katex-mathml`,children:_jsx(_components.math,{xmlns:`http://www.w3.org/1998/Math/MathML`,display:`block`,children:_jsxs(_components.semantics,{children:[_jsxs(_components.mrow,{children:[_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`p`}),_jsx(_components.mi,{children:`p`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`u`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`y`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mo,{children:`=`}),_jsx(_components.mi,{mathvariant:`normal`,children:`∣`}),_jsx(_components.mi,{children:`p`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`l`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{mathvariant:`normal`,children:`∣`}),_jsx(_components.mo,{children:`+`}),_jsx(_components.mi,{children:`c`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`u`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`m`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`s`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`t`}),_jsx(_components.mi,{children:`i`}),_jsx(_components.mi,{children:`o`}),_jsx(_components.mi,{children:`n`}),_jsx(_components.mi,{mathvariant:`normal`,children:`_`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`e`}),_jsx(_components.mi,{children:`w`}),_jsx(_components.mi,{children:`a`}),_jsx(_components.mi,{children:`r`}),_jsx(_components.mi,{children:`d`}),_jsx(_components.mi,{children:`s`})]}),_jsx(_components.annotation,{encoding:`application/x-tex`,children:`opportunity\\\\_cost = |penalties| + consensus\\\\_missed\\\\_attestation\\\\_rewards`})]})})}),_jsxs(_components.span,{className:`katex-html`,\"aria-hidden\":`true`,children:[_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`0.9695em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,children:`pp`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`or`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`u`}),_jsx(_components.span,{className:`mord mathnormal`,children:`ni`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0359em`},children:`y`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`cos`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}}),_jsx(_components.span,{className:`mrel`,children:`=`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2778em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1em`,verticalAlign:`-0.25em`}}),_jsx(_components.span,{className:`mord`,children:`∣`}),_jsx(_components.span,{className:`mord mathnormal`,children:`p`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,children:`na`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0197em`},children:`l`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`i`}),_jsx(_components.span,{className:`mord mathnormal`,children:`es`}),_jsx(_components.span,{className:`mord`,children:`∣`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2222em`}}),_jsx(_components.span,{className:`mbin`,children:`+`}),_jsx(_components.span,{className:`mspace`,style:{marginRight:`0.2222em`}})]}),_jsxs(_components.span,{className:`base`,children:[_jsx(_components.span,{className:`strut`,style:{height:`1.0044em`,verticalAlign:`-0.31em`}}),_jsx(_components.span,{className:`mord mathnormal`,children:`co`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord mathnormal`,children:`se`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mord mathnormal`,children:`u`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`mi`}),_jsx(_components.span,{className:`mord mathnormal`,children:`sse`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,children:`tt`}),_jsx(_components.span,{className:`mord mathnormal`,children:`es`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,children:`t`}),_jsx(_components.span,{className:`mord mathnormal`,children:`i`}),_jsx(_components.span,{className:`mord mathnormal`,children:`o`}),_jsx(_components.span,{className:`mord mathnormal`,children:`n`}),_jsx(_components.span,{className:`mord`,style:{marginRight:`0.0278em`},children:`_`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`e`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0269em`},children:`w`}),_jsx(_components.span,{className:`mord mathnormal`,children:`a`}),_jsx(_components.span,{className:`mord mathnormal`,style:{marginRight:`0.0278em`},children:`r`}),_jsx(_components.span,{className:`mord mathnormal`,children:`d`}),_jsx(_components.span,{className:`mord mathnormal`,children:`s`})]})]})]})})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Consensus missed rewards computation","description":"This page discusses Rated's methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.","href":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Consensus missed proposal rewards","slug":"consensus-missed-proposal-rewards","depth":2,"children":[]},{"title":"Consensus missed attestation rewards","slug":"consensus-missed-attestation-rewards","depth":2,"children":[{"title":"Consensus missed rewards pre-Altair","slug":"consensus-missed-rewards-pre-altair","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"dynamicCss":".mint-justify-center {\n justify-content: center\n}\n.mint-overflow-x-auto {\n overflow-x: auto\n}\n.mint-text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem\n}\n.mint-text-xs {\n font-size: 0.75rem;\n line-height: 1rem\n}\n.dark\\:mint-text-white:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1))\n}\n@media (min-width: 1024px) {\n .lg\\:mint-justify-start {\n justify-content: flex-start\n }\n}","subdomain":"rated","siteName":"Rated | docs","title":"Consensus missed rewards computation - Rated | docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2025-10-08T08:37:15.327Z","originalFileLocation":"documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"This page discusses Rated\u0026#x27;s methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.\">\u003cmeta data-mint-head name=\"keywords\" content=\"blockchain analytics, validator performance, Ethereum staking, Solana validators, blockchain API, validator effectiveness, staking rewards, crypto analytics, blockchain data\">\u003cmeta data-mint-head name=\"application-name\" content=\"Rated | docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"index, follow\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Consensus missed rewards computation - Rated | docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"This page discusses Rated\u0026#x27;s methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Rated | docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://rated.mintlify.app/_mintlify/api/og/v2?division=Validator+missed+rewards+computation\u0026amp;title=Consensus+missed+rewards+computation\u0026amp;description=This+page+discusses+Rated%27s+methodology+on+calculating+missed+consensus+layer+rewards+from+missed+block+proposals+and+failed+attestation+duties.\u0026amp;theme=04bdb086aa7e08082c310380\u0026amp;signature=4c254c82a32bbd987e9d8d74ff94e2e853dfd6c8040ea88388a19092b4842781\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Consensus missed rewards computation - Rated | docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"This page discusses Rated\u0026#x27;s methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://rated.mintlify.app/_mintlify/api/og/v2?division=Validator+missed+rewards+computation\u0026amp;title=Consensus+missed+rewards+computation\u0026amp;description=This+page+discusses+Rated%27s+methodology+on+calculating+missed+consensus+layer+rewards+from+missed+block+proposals+and+failed+attestation+duties.\u0026amp;theme=04bdb086aa7e08082c310380\u0026amp;signature=4c254c82a32bbd987e9d8d74ff94e2e853dfd6c8040ea88388a19092b4842781\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/rated/DOXqQuZO6DKmo5b7/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Rated Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0091FF\">\u003cmeta data-mint-head name=\"author\" content=\"Rated Network\">\u003cmeta data-mint-head name=\"googlebot\" content=\"index, follow\">\u003cmeta data-mint-head name=\"language\" content=\"en\">\u003cmeta data-mint-head name=\"category\" content=\"Technology\">\u003cmeta data-mint-head name=\"distribution\" content=\"global\">\u003cmeta data-mint-head name=\"coverage\" content=\"Worldwide\">\u003cmeta data-mint-head name=\"HandheldFriendly\" content=\"True\">\u003cmeta data-mint-head name=\"MobileOptimized\" content=\"320\">\u003cmeta data-mint-head name=\"theme-color\" content=\"#0091FF\">\u003cmeta data-mint-head name=\"color-scheme\" content=\"light dark\">\u003cmeta data-mint-head name=\"twitter:creator\" content=\"@ratedw3b\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-capable\" content=\"yes\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-status-bar-style\" content=\"default\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.rated.network/#organization\",\"name\":\"Rated | docs\",\"url\":\"https://docs.rated.network\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/rated/xA_7tu5wozIsFhjJ/images/logo/light.svg?fit=max\u0026auto=format\u0026n=xA_7tu5wozIsFhjJ\u0026q=85\u0026s=4ac034202bfaa36f3452acae5c7fbf4b\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.rated.network#website\",\"name\":\"Rated | docs\",\"url\":\"https://docs.rated.network\",\"publisher\":{\"@id\":\"https://docs.rated.network/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation#webpage\",\"url\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation\",\"name\":\"Consensus missed rewards computation\",\"description\":\"This page discusses Rated's methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.\",\"dateModified\":\"2025-10-08T08:37:15.327Z\",\"isPartOf\":{\"@id\":\"https://docs.rated.network#website\"},\"breadcrumb\":{\"@id\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Methodologies\",\"item\":\"https://docs.rated.network/documentation/methodologies/introduction-to-methodologies\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ethereum\",\"item\":\"https://docs.rated.network/documentation/methodologies/ethereum/ethereum\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Penalties and missed rewards\",\"item\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/penalties-computation/penalties-computation\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Validator missed rewards computation\",\"item\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/validator-missed-rewards-computation\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"Consensus missed rewards computation\",\"item\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation#article\",\"headline\":\"Consensus missed rewards computation\",\"name\":\"Consensus missed rewards computation\",\"description\":\"This page discusses Rated's methodology on calculating missed consensus layer rewards from missed block proposals and failed attestation duties.\",\"url\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation\",\"mainEntityOfPage\":{\"@id\":\"https://docs.rated.network/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation#webpage\"},\"dateModified\":\"2025-10-08T08:37:15.327Z\",\"publisher\":{\"@id\":\"https://docs.rated.network/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.rated.network#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Rated | docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Rated | docs","nav":{"global":null,"tabs":[{"tab":"API","versions":[{"version":"v1","groups":[{"group":"Getting started","pages":[{"title":"Welcome","icon":"party-horn","href":"/rated-api/getting-started/welcome"},{"title":"Networks supported","icon":"hive","href":"/rated-api/getting-started/networks-supported"},{"group":"Pricing","icon":"tag","pages":[{"title":"Compute Units","mode":"wide","href":"/rated-api/pricing/compute-units"}]}]},{"group":"Rated API","pages":[{"title":"Authentication","icon":"key","href":"/rated-api/authentication"},{"group":"Errors","icon":"brake-warning","pages":[{"title":"Errors summary","href":"/rated-api/errors/errors"},{"title":"Handling errors","href":"/rated-api/errors/handling-errors"}]},{"title":"Pagination","icon":"columns-3","href":"/rated-api/pagination/v1/pagination"},{"title":"Request IDs","icon":"id-card","href":"/rated-api/request-ids"},{"title":"Rate limits","icon":"gauge-max","href":"/rated-api/rate-limits"}]},{"group":"Endpoints","pages":[{"title":"Introduction","href":"/rated-api/api-reference/introduction"},{"group":"Ethereum","pages":[{"group":"Overview","pages":[{"title":"Ethereum Overview","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/ethereum/overview/overview"},{"sidebarTitle":"All entities summary stats","openapi":"get /v1/eth/entities/summaries","title":"Get summary stats on Pools, Operators and Addresses","href":"/rated-api/api-reference/v1/ethereum/overview/get-summary-stats-on-pools-operators-and-addresses"},{"sidebarTitle":"Individual entity summary stats","openapi":"get /v1/eth/entities/{entity_id}/summaries","title":"Get summary stats on individual Pools, Operators and Addresses","href":"/rated-api/api-reference/v1/ethereum/overview/get-summary-stats-on-individual-pools-operators-and-addresses"},{"sidebarTitle":"List of validators","openapi":"get /v1/eth/validators","title":"Get a list of validators","href":"/rated-api/api-reference/v1/ethereum/overview/get-a-list-of-validators"},{"sidebarTitle":"Single validator","openapi":"get /v1/eth/validators/{validator_index_or_pubkey}","title":"Get validator","href":"/rated-api/api-reference/v1/ethereum/overview/get-validator"}]},{"group":"Self report","pages":[{"title":"Self report","sidebarTitle":"Summary","href":"/rated-api/api-reference/v0/ethereum/self-report/self-report"},{"openapi":"post /v0/selfReports/validators","title":"Report Validators","href":"/rated-api/api-reference/v0/ethereum/self-report/report-validators"}]},{"group":"Performance","pages":[{"title":"Performance","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/ethereum/performance/performance"},{"openapi":"get /v1/eth/entities/{entity_id}/effectiveness","sidebarTitle":"Entity Effectiveness","title":"Get effectiveness for Pools, Operators and Addresses","href":"/rated-api/api-reference/v1/ethereum/performance/get-effectiveness-for-pools-operators-and-addresses"},{"openapi":"get /v1/eth/entities/{entity_id}/attestations","sidebarTitle":"Entity Attestation Duties Metrics","title":"Get attestation duties metrics for Pools, Operators and Addresses","href":"/rated-api/api-reference/v1/ethereum/performance/get-attestation-duties-metrics-for-pools-operators-and-addresses"},{"openapi":"get /v1/eth/entities/{entity_id}/proposals","sidebarTitle":"Entity Proposer Duties Metrics","title":"Get proposer duties metrics for Pools, Operators and Addresses","href":"/rated-api/api-reference/v1/ethereum/performance/get-proposer-duties-metrics-for-pools-operators-and-addresses"},{"openapi":"get /v1/eth/validators/{validator_index_or_pubkey}/effectiveness","sidebarTitle":"Validator Effectiveness","title":"Get validator effectiveness","href":"/rated-api/api-reference/v1/ethereum/performance/get-validator-effectiveness"},{"openapi":"get /v1/eth/validators/{validator_index_or_pubkey}/attestations","sidebarTitle":"Validator Attestation Duties Metrics","title":"Get validator attestation duties metrics","href":"/rated-api/api-reference/v1/ethereum/performance/get-validator-attestation-duties-metrics"},{"openapi":"get /v1/eth/validators/{validator_index_or_pubkey}/proposals","sidebarTitle":"Validator Proposal Duties Metrics","title":"Get validator proposal duties metrics","href":"/rated-api/api-reference/v1/ethereum/performance/get-validator-proposal-duties-metrics"},{"openapi":"get /v1/eth/validators/effectiveness","sidebarTitle":"Validators Aggregated Effectiveness","title":"Get aggregated effectiveness for validators","href":"/rated-api/api-reference/v1/ethereum/performance/get-aggregated-effectiveness-for-validators"},{"openapi":"get /v1/eth/validators/attestations","sidebarTitle":"Validators Aggregated Attestation Metrics","title":"Get attestation duties metrics for group of validators","href":"/rated-api/api-reference/v1/ethereum/performance/get-attestation-duties-metrics-for-group-of-validators"},{"openapi":"get /v1/eth/validators/proposals","sidebarTitle":"Validators Aggregated Proposal Metrics","title":"Get proposer duties metrics for a group of validators","href":"/rated-api/api-reference/v1/ethereum/performance/get-proposer-duties-metrics-for-a-group-of-validators"},{"openapi":"get /v1/eth/sets/{set_id}/effectiveness","sidebarTitle":"Private Set Effectiveness","title":"Get effectiveness for a private set","href":"/rated-api/api-reference/v1/ethereum/performance/get-effectiveness-for-a-private-set"},{"openapi":"get /v1/eth/sets/{set_id}/attestations","sidebarTitle":"Private Set Attestation Duties Metrics","title":"Get attestation duties metrics for a private set","href":"/rated-api/api-reference/v1/ethereum/performance/get-attestation-duties-metrics-for-a-private-set"},{"openapi":"get /v1/eth/sets/{set_id}/proposals","sidebarTitle":"Private Set Proposer Duties Metrics","title":"Get proposer duties metrics for a private set","href":"/rated-api/api-reference/v1/ethereum/performance/get-proposer-duties-metrics-for-a-private-set"}]},{"group":"Rewards","pages":[{"title":"Rewards","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/ethereum/rewards/rewards"},{"openapi":"get /v1/eth/sets/{set_id}/penalties","sidebarTitle":"Private Set Penalty Metrics","title":"Get penalty metrics for a private set","href":"/rated-api/api-reference/v1/ethereum/rewards/get-penalty-metrics-for-a-private-set"},{"openapi":"get /v1/eth/entities/{entity_id}/penalties","sidebarTitle":"Entity Penalty Metrics","title":"Get penalty metrics for Pools, Operators and Addresses","href":"/rated-api/api-reference/v1/ethereum/rewards/get-penalty-metrics-for-pools-operators-and-addresses"},{"openapi":"get /v1/eth/sets/{set_id}/rewards","sidebarTitle":"Private Set Rewards Metrics","title":"Get rewards metrics for a private set","href":"/rated-api/api-reference/v1/ethereum/rewards/get-rewards-metrics-for-a-private-set"},{"openapi":"get /v1/eth/entities/{entity_id}/rewards","sidebarTitle":"Entity Rewards Metrics","title":"Get rewards metrics for Pools, Operators and Addresses","href":"/rated-api/api-reference/v1/ethereum/rewards/get-rewards-metrics-for-pools-operators-and-addresses"},{"openapi":"get /v1/eth/validators/{validator_index_or_pubkey}/penalties","sidebarTitle":"Validator Penalty Metrics","title":"Get validator penalty metrics","href":"/rated-api/api-reference/v1/ethereum/rewards/get-validator-penalty-metrics"},{"openapi":"get /v1/eth/validators/{validator_index_or_pubkey}/rewards","sidebarTitle":"Validator Rewards Metrics","title":"Get validator rewards metrics","href":"/rated-api/api-reference/v1/ethereum/rewards/get-validator-rewards-metrics"},{"openapi":"get /v1/eth/validators/rewards","sidebarTitle":"Validators Aggregated Rewards","title":"Get rewards metrics for a group of validators","href":"/rated-api/api-reference/v1/ethereum/rewards/get-rewards-metrics-for-a-group-of-validators"},{"openapi":"get /v1/eth/validators/penalties","sidebarTitle":"Validators Aggregated Penalties","title":"Get aggregated penalty metrics for validators","href":"/rated-api/api-reference/v1/ethereum/rewards/get-aggregated-penalty-metrics-for-validators"}]},{"group":"Metadata","pages":[{"title":"Metadata","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/ethereum/metadata/metadata"},{"openapi":"get /v1/eth/entities/{entity_id}/mappings","sidebarTitle":"Entity Mappings","title":"Get Validator mappings for Pools and Operators.","href":"/rated-api/api-reference/v1/ethereum/metadata/get-validator-mappings-for-pools-and-operators"},{"openapi":"get /v1/eth/entities/{entity_id}/aprs","sidebarTitle":"Entity APRs","title":"Get APR information for Pools, Operators and Addresses.","href":"/rated-api/api-reference/v1/ethereum/metadata/get-apr-information-for-pools-operators-and-addresses"},{"openapi":"get /v1/eth/validators/mappings","sidebarTitle":"All Validator Mappings","title":"Get Pool and Operator mappings for all Validators.","href":"/rated-api/api-reference/v1/ethereum/metadata/get-pool-and-operator-mappings-for-all-validators"},{"openapi":"get /v1/eth/validators/{validator_index_or_pubkey}/mappings","sidebarTitle":"Validator Mappings","title":"Get Pool and Operator mappings for Validators.","href":"/rated-api/api-reference/v1/ethereum/metadata/get-pool-and-operator-mappings-for-validators"},{"openapi":"get /v1/eth/validators/{validator_index_or_pubkey}/aprs","sidebarTitle":"Validator APRs","title":"Get APR information for Validators.","href":"/rated-api/api-reference/v1/ethereum/metadata/get-apr-information-for-validators"},{"openapi":"get /v1/eth/validators/slashings","sidebarTitle":"Validator Slashings","title":"Get Slashings information for all Validators.","href":"/rated-api/api-reference/v1/ethereum/metadata/get-slashings-information-for-all-validators"},{"openapi":"get /v1/eth/validators/consolidations","sidebarTitle":"Validator Consolidations","title":"Get consolidations for Validators.","href":"/rated-api/api-reference/v1/ethereum/metadata/get-consolidations-for-validators"},{"openapi":"get /v1/eth/entityConsolidations","sidebarTitle":"Entity-level Validator Consolidations","title":"Get validator consolidations information for Pools and Operators.","href":"/rated-api/api-reference/v1/ethereum/metadata/get-validator-consolidations-information-for-pools-and-operators"},{"openapi":"get /v1/eth/apiMetadata","sidebarTitle":"Metadata","title":"Get metadata on the Rated Ethereum API endpoints","href":"/rated-api/api-reference/v1/ethereum/metadata/get-metadata-on-the-rated-ethereum-api-endpoints"}]},{"group":"Network","pages":[{"title":"Network","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/ethereum/network/network"},{"openapi":"get /v1/eth","sidebarTitle":"Ethereum Network Overview","title":"Get an overview of the Ethereum network.","href":"/rated-api/api-reference/v1/ethereum/network/get-an-overview-of-the-ethereum-network"},{"openapi":"get /v1/eth/effectiveness","sidebarTitle":"Ethereum Performance Overview","title":"Get an overview of Ethereum performance.","href":"/rated-api/api-reference/v1/ethereum/network/get-an-overview-of-ethereum-performance"},{"openapi":"get /v1/eth/rewards","sidebarTitle":"Ethereum Reward Metrics","title":"Get reward metrics of the Ethereum network.","href":"/rated-api/api-reference/v1/ethereum/network/get-reward-metrics-of-the-ethereum-network"},{"openapi":"get /v1/eth/geographicalDistributions","sidebarTitle":"Ethereum Geographical Distribution","title":"Get the geographical distribution of the Ethereum network.","href":"/rated-api/api-reference/v1/ethereum/network/get-the-geographical-distribution-of-the-ethereum-network"},{"openapi":"get /v1/eth/hostDistributions","sidebarTitle":"Ethereum Host Distribution","title":"Get the host distribution of the Ethereum network.","href":"/rated-api/api-reference/v1/ethereum/network/get-the-host-distribution-of-the-ethereum-network"},{"openapi":"get /v1/eth/consolidationCapacity","sidebarTitle":"Ethereum Consolidation Churn Capacity","title":"Get information on the validator consolidation churn capacity of Ethereum.","href":"/rated-api/api-reference/v1/ethereum/network/get-information-on-the-validator-consolidation-churn-capacity-of-ethereum"},{"openapi":"get /v1/eth/consolidationCapacity/entity","sidebarTitle":"Ethereum Consolidation Churn Capacity Per Entity","title":"Get information on the per entity validator consolidation churn capacity of Ethereum.","href":"/rated-api/api-reference/v1/ethereum/network/get-information-on-the-per-entity-validator-consolidation-churn-capacity-of-ethereum"},{"openapi":"get /v1/eth/queues","sidebarTitle":"Ethereum Staking Queues","title":"Get information on various staking processing queues on Ethereum","href":"/rated-api/api-reference/v1/ethereum/network/get-information-on-various-staking-processing-queues-on-ethereum"}]},{"group":"Private Sets","pages":[{"title":"Private Sets","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/ethereum/private-sets/private-sets"},{"openapi":"get /v1/tags","title":"Get all tags","href":"/rated-api/api-reference/v1/ethereum/private-sets/get-all-tags"},{"openapi":"post /v1/tags","title":"Create a new tag","href":"/rated-api/api-reference/v1/ethereum/private-sets/create-a-new-tag"},{"openapi":"get /v1/tags/{id}","title":"Get details about a tag","href":"/rated-api/api-reference/v1/ethereum/private-sets/get-details-about-a-tag"},{"openapi":"patch /v1/tags/{id}","title":"Update a tag","href":"/rated-api/api-reference/v1/ethereum/private-sets/update-a-tag"},{"openapi":"get /v1/tags/{id}/validators","title":"Get all validators in a tag","href":"/rated-api/api-reference/v1/ethereum/private-sets/get-all-validators-in-a-tag"},{"openapi":"post /v1/tags/{id}/validators","title":"Add validators to a tag","href":"/rated-api/api-reference/v1/ethereum/private-sets/add-validators-to-a-tag"},{"openapi":"delete /v1/tags/{id}/validators/{pubkey}","title":"Remove validator pubkey from a tag","href":"/rated-api/api-reference/v1/ethereum/private-sets/remove-validator-pubkey-from-a-tag"},{"openapi":"post /v1/tags/{id}/validators/remove","title":"Remove multiple validator pubkeys from a tag","href":"/rated-api/api-reference/v1/ethereum/private-sets/remove-multiple-validator-pubkeys-from-a-tag"},{"openapi":"delete /v1/tags/{id}","title":"Delete private set tag","href":"/rated-api/api-reference/v1/ethereum/private-sets/delete-private-set-tag"}]},{"group":"Withdrawals","pages":[{"title":"Withdrawals","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/ethereum/withdrawals/withdrawals"},{"openapi":"get /v1/eth/entities/{withdrawal_address}/withdrawals","sidebarTitle":"Withdrawals by Address","title":"Get withdrawal metrics for Withdrawal Addresses","href":"/rated-api/api-reference/v1/ethereum/withdrawals/get-withdrawal-metrics-for-withdrawal-addresses"},{"openapi":"get /v1/eth/validators/{validator_index_or_pubkey}/withdrawals","sidebarTitle":"Individual validators withdrawals","title":"Get withdrawal metrics for individual validators","href":"/rated-api/api-reference/v1/ethereum/withdrawals/get-withdrawal-metrics-for-individual-validators"}]},{"group":"Blocks","pages":[{"title":"Blocks","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/ethereum/blocks/blocks"},{"openapi":"get /v1/eth/blocks","sidebarTitle":"Ethereum Slots and Blocks","title":"List of slots and blocks","href":"/rated-api/api-reference/v1/ethereum/blocks/get-slots-and-blocks-on-the-ethereum-network"},{"openapi":"get /v1/eth/builderPayments","sidebarTitle":"Ethereum Block Builder Payments","title":"Block builder payment transaction hashes","href":"/rated-api/api-reference/v1/ethereum/blocks/get-information-for-block-builder-payments-by-slot"}]}]},{"group":"Solana","pages":[{"group":"Overview","pages":[{"title":"Overview","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/solana/overview/overview"},{"openapi":"get /v1/solana/network/overview","sidebarTitle":"Network overview","title":"Get Network Overview","href":"/rated-api/api-reference/v1/solana/overview/get-network-overview"},{"openapi":"get /v1/solana/validators","sidebarTitle":"Validators summary metrics","title":"Get summary metrics for multiple validators","href":"/rated-api/api-reference/v1/solana/overview/get-summary-metrics-for-multiple-validators"},{"openapi":"get /v1/solana/validators/{validator_id}/summary","sidebarTitle":"Validator summary metrics","title":"Get validator summary metrics","href":"/rated-api/api-reference/v1/solana/overview/get-validator-summary-metrics"},{"openapi":"get /v1/solana/delegators/stakeAccounts","sidebarTitle":"Stake accounts delegator summary","title":"Get summary metrics for multiple stake accounts","href":"/rated-api/api-reference/v1/solana/overview/get-summary-metrics-for-multiple-stake-accounts"},{"openapi":"get /v1/solana/delegators/stakeAccounts/{stake_account}/summary","sidebarTitle":"Stake account delegator summary","title":"Get stake account summary metrics","href":"/rated-api/api-reference/v1/solana/overview/get-stake-account-summary-metrics"},{"openapi":"get /v1/solana/delegators/stakeAuthorities","sidebarTitle":"Stake authorities delegator summary","title":"Get summary metrics for multiple stake authorities","href":"/rated-api/api-reference/v1/solana/overview/get-summary-metrics-for-multiple-stake-authorities"},{"openapi":"get /v1/solana/delegators/stakeAuthorities/{stake_authority}/summary","sidebarTitle":"Stake authority delegator summary","title":"Get stake authority summary metrics","href":"/rated-api/api-reference/v1/solana/overview/get-stake-authority-summary-metrics"}]},{"group":"Performance","pages":[{"title":"Performance","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/solana/performance/performance"},{"openapi":"get /v1/solana/validators/{validator_id}/performance","sidebarTitle":"Validator performance","title":"Get validator performance","href":"/rated-api/api-reference/v1/solana/performance/get-validator-performance"},{"openapi":"get /v1/solana/network/geolocation/latency","sidebarTitle":"Geolocation Vote Latency","title":"Retired — daily vote latency across all geolocations","href":"/rated-api/api-reference/v1/solana/performance/get-daily-vote-latency-across-all-geolocations"},{"openapi":"get /v1/solana/network/effectiveness","sidebarTitle":"Network effectiveness","title":"Get historical network level performance","href":"/rated-api/api-reference/v1/solana/performance/get-historical-network-level-performance"},{"openapi":"get /v1/solana/validators/{validator_id}/blockInsights","sidebarTitle":"Validator block-level insights","title":"Get validator block insights","href":"/rated-api/api-reference/v1/solana/performance/get-validator-block-insights"},{"openapi":"get /v1/solana/validators/{validator_id}/state","sidebarTitle":"Validator state","title":"Get validator state information","href":"/rated-api/api-reference/v1/solana/performance/get-validator-state-information"},{"openapi":"get /v1/solana/validators/{validator_id}/votePerformance","sidebarTitle":"Validator Vote Performance","title":"Retired — validator vote performance","href":"/rated-api/api-reference/v1/solana/performance/get-validator-vote-performance-data"}]},{"group":"Rewards","pages":[{"title":"Rewards","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/solana/rewards/rewards"},{"openapi":"get /v1/solana/validators/{validator_id}/rewards","sidebarTitle":"Validator rewards","title":"Get validator rewards metrics","href":"/rated-api/api-reference/v1/solana/rewards/get-validator-rewards-metrics"},{"openapi":"get /v1/solana/delegators/stakeAccounts/{stake_account}/rewards","sidebarTitle":"Delegator rewards - stake account","title":"Get stake account rewards metrics","href":"/rated-api/api-reference/v1/solana/rewards/get-stake-account-rewards-metrics"},{"openapi":"get /v1/solana/delegators/stakeAuthorities/{stake_authority}/rewards","sidebarTitle":"Delegator rewards - stake authority","title":"Get stake authority rewards metrics","href":"/rated-api/api-reference/v1/solana/rewards/get-stake-authority-rewards-metrics"},{"openapi":"get /v1/solana/network/rewards","sidebarTitle":"Network rewards","title":"Get historical network level rewards","href":"/rated-api/api-reference/v1/solana/rewards/get-historical-network-level-rewards"}]},{"group":"Metadata","pages":[{"title":"Metadata","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/solana/metadata/metadata"},{"sidebarTitle":"Validator metadata","openapi":"get /v1/solana/validators/{validator_id}","title":"Get various metadata about validators.","href":"/rated-api/api-reference/v1/solana/metadata/get-various-metadata-about-validators"},{"sidebarTitle":"Validator-Stake Account Mapping","openapi":"get /v1/solana/validators/{validator_id}/delegators","title":"Get the stake accounts associated to a validator.","href":"/rated-api/api-reference/v1/solana/metadata/get-stake-accounts-associated-to-a-validator"},{"sidebarTitle":"API metadata","openapi":"get /v1/solana/apiMetadata","title":"Get metadata on the Rated Solana API endpoints","href":"/rated-api/api-reference/v1/solana/metadata/get-metadata-on-the-rated-solana-api-endpoints"},{"sidebarTitle":"Solana epoch metadata","openapi":"get /v1/solana/epochMetadata","title":"Get epoch metadata for an epoch ending on the day specified","href":"/rated-api/api-reference/v1/solana/metadata/get-epoch-metadata-for-an-epoch-ending-on-the-day-specified"}]}]},{"group":"Cosmos","pages":[{"group":"Rewards","pages":[{"title":"Rewards","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/cosmos/rewards/rewards"},{"openapi":"get /v1/cosmos/validators/{validator_address}/rewards","sidebarTitle":"Validator rewards","title":"Get validator rewards metrics","href":"/rated-api/api-reference/v1/cosmos/rewards/get-validator-rewards-metrics"},{"openapi":"get /v1/cosmos/network/rewards","sidebarTitle":"Network rewards","title":"Get network rewards metrics","href":"/rated-api/api-reference/v1/cosmos/rewards/get-network-rewards-metrics"}]}]},{"group":"Avalanche","pages":[{"group":"Rewards","pages":[{"title":"Rewards","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/avalanche/rewards/rewards"},{"openapi":"get /v1/avalanche/validators/{node_id}/rewards","sidebarTitle":"Validator rewards","title":"Get validator rewards metrics","href":"/rated-api/api-reference/v1/avalanche/rewards/get-validator-rewards-metrics"},{"openapi":"get /v1/avalanche/network/rewards","sidebarTitle":"Network rewards","title":"Get network rewards metrics","href":"/rated-api/api-reference/v1/avalanche/rewards/get-network-rewards-metrics"}]}]},{"group":"Cardano","pages":[{"group":"Rewards","pages":[{"title":"Rewards","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/cardano/rewards/rewards"},{"openapi":"get /v1/cardano/validators/{pool_id}/rewards","sidebarTitle":"Validator rewards","title":"Get stake pool/validator rewards metrics","href":"/rated-api/api-reference/v1/cardano/rewards/get-validator-rewards-metrics"},{"openapi":"get /v1/cardano/network/rewards","sidebarTitle":"Network rewards","title":"Get network rewards metrics","href":"/rated-api/api-reference/v1/cardano/rewards/get-network-rewards-metrics"}]}]},{"group":"Polkadot","pages":[{"group":"Rewards","pages":[{"title":"Rewards","sidebarTitle":"Summary","href":"/rated-api/api-reference/v1/polkadot/rewards/rewards"},{"openapi":"get /v1/polkadot/validators/{validator_address}/rewards","sidebarTitle":"Validator rewards","title":"Get validator rewards metrics","href":"/rated-api/api-reference/v1/polkadot/rewards/get-validator-rewards-metrics"},{"openapi":"get /v1/polkadot/network/rewards","sidebarTitle":"Network rewards","title":"Get network rewards metrics","href":"/rated-api/api-reference/v1/polkadot/rewards/get-network-rewards-metrics"}]}]}]},{"group":"Glossary","pages":[{"group":"Avalanche","pages":[{"title":"Network","href":"/rated-api/glossary/avalanche/network"},{"title":"Validators","href":"/rated-api/glossary/avalanche/validators"}]},{"group":"Cardano","pages":[{"title":"Network","href":"/rated-api/glossary/cardano/network"},{"title":"Validators","href":"/rated-api/glossary/cardano/validators"}]},{"group":"Cosmos","pages":[{"title":"Network","href":"/rated-api/glossary/cosmos/network"},{"title":"Validators","href":"/rated-api/glossary/cosmos/validators"}]},{"group":"Ethereum","pages":[{"title":"Blocks","href":"/rated-api/glossary/ethereum/blocks"},{"title":"Effectiveness","href":"/rated-api/glossary/ethereum/effectiveness"},{"title":"Network","href":"/rated-api/glossary/ethereum/network"},{"title":"Operators","href":"/rated-api/glossary/ethereum/operators"},{"title":"Validators","href":"/rated-api/glossary/ethereum/validators"},{"title":"Withdrawals","href":"/rated-api/glossary/ethereum/withdrawals"},{"title":"Pool shares","href":"/rated-api/glossary/ethereum/pool-shares"}]},{"group":"Polkadot","pages":[{"title":"Network","href":"/rated-api/glossary/polkadot/network"},{"title":"Validators","href":"/rated-api/glossary/polkadot/validators"}]},{"group":"Solana","pages":[{"title":"Delegators","href":"/rated-api/glossary/solana/delegators"},{"title":"Network","href":"/rated-api/glossary/solana/network"},{"title":"Validators","href":"/rated-api/glossary/solana/validators"}]}]},{"group":"Guides","pages":[{"group":"Use Cases","pages":[{"title":"Rewards Accounting","href":"/rated-api/guides/use-cases/rewards-accounting"},{"title":"Performance Benchmarking","href":"/rated-api/guides/use-cases/performance-benchmarking"},{"title":"Private Sets","href":"/rated-api/guides/use-cases/private-sets"}]},{"title":"Developers FAQ","href":"/rated-api/guides/developers-faq"}]},{"group":"Tools","pages":[{"title":"Rated SDK","icon":"python","href":"/rated-api/tools/rated-sdk"},{"title":"Rated CLI","icon":"terminal","href":"/rated-api/tools/rated-cli"},{"title":"Rated Console","icon":"chart-line","url":"https://console.rated.network","href":"/rated-api/tools/rated-console"},{"title":"Rated Network Explorer","icon":"network-wired","url":"https://explorer.rated.network","href":"/rated-api/tools/rated-explorer"}]}]},{"version":"v0","pages":[{"title":"v0","href":"/rated-api/getting-started/welcome"}]}]},{"tab":"Documentation","groups":[{"group":"Getting started","pages":[{"title":"Welcome","icon":"party-horn","href":"/documentation/welcome"}]},{"group":"Explorer","pages":[{"title":"Introduction","href":"/documentation/explorer/introduction"},{"group":"Ethereum","pages":[{"title":"Overview","href":"/documentation/explorer/ethereum/ethereum"},{"group":"Network Views","pages":[{"title":"Network Views","href":"/documentation/explorer/ethereum/network-views/network-views"},{"group":"Network Overview","pages":[{"title":"Overview","href":"/documentation/explorer/ethereum/network-views/network-overview/network-overview"},{"title":"Activation queue length","href":"/documentation/explorer/ethereum/network-views/network-overview/activation-queue-length"},{"title":"Exit queue length","href":"/documentation/explorer/ethereum/network-views/network-overview/exit-queue-length"},{"title":"Withdrawal queue length","href":"/documentation/explorer/ethereum/network-views/network-overview/withdrawal-queue-length"}]},{"group":"Pools, Operators and Validators","pages":[{"title":"Overview","href":"/documentation/explorer/ethereum/network-views/pools-operators-and-validators/pools-operators-and-validators"},{"title":"Classes of aggregation","href":"/documentation/explorer/ethereum/network-views/pools-operators-and-validators/classes-of-aggregation"},{"title":"\"View by\" toggle","href":"/documentation/explorer/ethereum/network-views/pools-operators-and-validators/view-by-toggle"},{"title":"Entity metrics drill-down","href":"/documentation/explorer/ethereum/network-views/pools-operators-and-validators/entity-metrics-drill-down"}]}]},{"group":"PBS Landscape","pages":[{"title":"PBS Landscape","href":"/documentation/explorer/ethereum/pbs-landscape/pbs-landscape"},{"group":"Relays","pages":[{"title":"Overview","href":"/documentation/explorer/ethereum/pbs-landscape/relays/relays"},{"title":"Relay addresses","href":"/documentation/explorer/ethereum/pbs-landscape/relays/relay-addresses"}]},{"group":"Builders","pages":[{"title":"Overview","href":"/documentation/explorer/ethereum/pbs-landscape/builders/builders"},{"title":"Builder pubkeys","href":"/documentation/explorer/ethereum/pbs-landscape/builders/builder-pubkeys"}]}]},{"group":"Miscellaneous","pages":[{"title":"Overview","href":"/documentation/explorer/ethereum/miscellaneous/miscellaneous"},{"title":"Leaderboard","href":"/documentation/explorer/ethereum/miscellaneous/leaderboard"},{"title":"Slashings","href":"/documentation/explorer/ethereum/miscellaneous/slashings"}]}]},{"group":"Solana","pages":[{"title":"Solana","href":"/documentation/explorer/solana/solana"},{"group":"Network Views","pages":[{"title":"Network Overview","href":"/documentation/explorer/solana/network-views/network-overview"},{"group":"Pools","pages":[{"title":"Overview","href":"/documentation/explorer/solana/network-views/pools/pools"},{"title":"Pool metrics drill-down","href":"/documentation/explorer/solana/network-views/pools/pool-metrics-drill-down"}]},{"group":"Validators","pages":[{"title":"Overview","href":"/documentation/explorer/solana/network-views/validators/validators"},{"title":"Validator metrics drill-down","href":"/documentation/explorer/solana/network-views/validators/validator-metrics-drill-down"}]},{"group":"Delegators","pages":[{"title":"Overview","href":"/documentation/explorer/solana/network-views/delegators/delegators"},{"group":"Stake Accounts","pages":[{"title":"Stake Accounts","href":"/documentation/explorer/solana/network-views/delegators/stake-accounts/stake-accounts"},{"title":"Stake Account metrics drill-down","href":"/documentation/explorer/solana/network-views/delegators/stake-accounts/stake-account-metrics-drill-down"}]},{"group":"Stake Authorities","pages":[{"title":"Overview","href":"/documentation/explorer/solana/network-views/delegators/stake-authorities/stake-authorities"},{"title":"Stake Authority metrics drill-down","href":"/documentation/explorer/solana/network-views/delegators/stake-authorities/stake-authority-metrics-drill-down"}]}]}]}]},{"title":"Frequently asked questions","href":"/documentation/explorer/frequently-asked-questions"}]},{"group":"Methodologies","pages":[{"title":"Introduction to Methodologies","href":"/documentation/methodologies/introduction-to-methodologies"},{"group":"Ethereum","pages":[{"title":"Overview","href":"/documentation/methodologies/ethereum/ethereum"},{"group":"Rated Effectiveness Rating","pages":[{"title":"Overview","href":"/documentation/methodologies/ethereum/rated-effectiveness-rating/rated-effectiveness-rating"},{"title":"RAVER v3.0 [current]","href":"/documentation/methodologies/ethereum/rated-effectiveness-rating/raver-v3.0-current"},{"title":"RAVER v2.1","href":"/documentation/methodologies/ethereum/rated-effectiveness-rating/raver-v2.1"},{"title":"RAVER v2.0","href":"/documentation/methodologies/ethereum/rated-effectiveness-rating/raver-v2.0"},{"title":"RAVER v1.0","href":"/documentation/methodologies/ethereum/rated-effectiveness-rating/raver-v1.0"}]},{"title":"Rating percentiles","href":"/documentation/methodologies/ethereum/rating-percentiles"},{"group":"Penalties and missed rewards","pages":[{"group":"Penalties computation","pages":[{"title":"Overview","href":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/penalties-computation/penalties-computation"},{"title":"Pre-Altair penalties computation","href":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/penalties-computation/pre-altair-penalties-computation"}]},{"group":"Validator missed rewards computation","pages":[{"title":"Overview","description":"This section discusses the methodologies that underlie Rated's calculation of missed rewards on the Beacon Chain.","href":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/validator-missed-rewards-computation"},{"title":"Consensus missed rewards computation","href":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/consensus-missed-rewards-computation"},{"title":"Execution missed rewards computation","description":"This page discusses Rated's methodology on calculating missed execution layer rewards emanating from missed block proposals.","href":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/validator-missed-rewards-computation/execution-missed-rewards-computation"}]},{"title":"Slashing penalties","href":"/documentation/methodologies/ethereum/penalties-and-missed-rewards/slashing-penalties"}]},{"title":"APR%","href":"/documentation/methodologies/ethereum/apr"},{"title":"Baseline MEV computation","href":"/documentation/methodologies/ethereum/baseline-mev-computation"},{"title":"Gini coefficient measurement","href":"/documentation/methodologies/ethereum/gini-coefficient-measurement"},{"title":"Aggregating validator indices","href":"/documentation/methodologies/ethereum/aggregating-validator-indices"}]},{"group":"Solana","pages":[{"title":"Overview","href":"/documentation/methodologies/solana/solana"},{"group":"Solana Validator Effectiveness Rating","pages":[{"title":"Overview","href":"/documentation/methodologies/solana/solana-validator-effectiveness-rating/solana-validator-effectiveness-rating"},{"title":"Version 2.0 [current]","href":"/documentation/methodologies/solana/solana-validator-effectiveness-rating/version-2.0-current"},{"title":"Version 1.0","href":"/documentation/methodologies/solana/solana-validator-effectiveness-rating/version-1.0"}]},{"group":"Annual Percentage Yield (APY)","pages":[{"title":"Overview","href":"/documentation/methodologies/solana/annual-percentage-yield-apy/annual-percentage-yield-apy"},{"title":"Delegator APY%","href":"/documentation/methodologies/solana/annual-percentage-yield-apy/delegator-apy"},{"title":"Validator APY%","href":"/documentation/methodologies/solana/annual-percentage-yield-apy/validator-apy"}]},{"title":"Gini coefficient measurement","href":"/documentation/methodologies/solana/gini-coefficient-measurement"}]}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]},{"tab":"Legal","pages":[{"title":"Legal","href":"/legal/terms/website-terms-of-use"}]}]},"basePath":"","title":"Consensus missed rewards computation - Rated | docs","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["07c022d89b"],"chunks":["Frame-DXXFP6nH.js","DynamicMarkdown-B54_zNBF.js"]}