Welcome to our 2024 NFL projections, where you will find each team’s probability of conquering its division, advancing through the playoffs and winning the Super Bowl. The projections are based on 100,000 simulations of the remainder of the season, which factors in each team’s projected strength, current health as well as its remaining schedule. All projections and probabilities are rounded to the nearest whole number. You can read more about the model at the bottom of the page. The projections will be updated regularly throughout each week.
‘,s=z(),l=S(“div”);for(let k=0;k<_.length class="arrow-image svelte-1vhd4sk">
‘,c=z(),f=S(“div”);for(let k=0;k ‘,d=z(),g=S(“tbody”);for(let T=0;T=l-n?(Dn(e,t,s,r),Dn(e,t,n,l-1)):(Dn(e,t,n,l-1),Dn(e,t,s,r))}}function jn(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function dg(e){return e[0]}function mg(e){return e[1]}const no=1e-6;let an=class{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=””}moveTo(t,n){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+=”Z”)}lineTo(t,n){this._+=`L${this._x1=+t},${this._y1=+n}`}arc(t,n,r){t=+t,n=+n,r=+r;const i=t+r,s=n;if(rno||Math.abs(this._y1-s)>no)&&(this._+=”L”+i+”,”+s),r&&(this._+=`A${r},${r},0,1,1,${t-r},${n}A${r},${r},0,1,1,${this._x1=i},${this._y1=s}`)}rect(t,n,r,i){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${+r}v${+i}h${-r}Z`}value(){return this._||null}};class qi{constructor(){this._=[]}moveTo(t,n){this._.push([t,n])}closePath(){this._.push(this._[0].slice())}lineTo(t,n){this._.push([t,n])}value(){return this._.length?this._:null}}class gg{constructor(t,[n,r,i,s]=[0,0,960,500]){if(!((i=+i)>=(n=+n))||!((s=+s)>=(r=+r)))throw new Error(“invalid bounds”);this.delaunay=t,this._circumcenters=new Float64Array(t.points.length*2),this.vectors=new Float64Array(t.points.length*2),this.xmax=i,this.xmin=n,this.ymax=s,this.ymin=r,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:t,hull:n,triangles:r},vectors:i}=this;let s,l;const o=this.circumcenters=this._circumcenters.subarray(0,r.length/3*2);for(let _=0,p=0,w=r.length,k,E;_0){if(n>=this.ymax)return null;(l=(this.ymax-n)/i)0){if(t>=this.xmax)return null;(l=(this.xmax-t)/r)this.xmax?2:0)|(nsn)if(!(Math.abs(h*a-c*f)>sn)||!s)this._append`L${this._x1=t},${this._y1=n}`;else{let d=r-l,g=i-o,_=a*a+c*c,p=d*d+g*g,w=Math.sqrt(_),k=Math.sqrt(u),E=s*Math.tan(($i-Math.acos((_+u-p)/(2*w*k)))/2),T=E/k,N=E/w;Math.abs(T-1)>sn&&this._append`L${t+T*f},${n+T*h}`,this._append`A${s},${s},0,0,${+(h*d>f*g)},${this._x1=t+N*a},${this._y1=n+N*c}`}}arc(t,n,r,i,s,l){if(t=+t,n=+n,r=+r,l=!!l,rsn||Math.abs(this._y1-f)>sn)&&this._append`L${c},${f}`,r&&(uxg?this._append`A${r},${r},0,1,${h},${t-o},${n-a}A${r},${r},0,1,${h},${this._x1=c},${this._y1=f}`:u>sn&&this._append`A${r},${r},0,${+(u>=$i)},${h},${this._x1=t+r*Math.cos(s)},${this._y1=n+r*Math.sin(s)}`)}rect(t,n,r,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function Pg(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new Og(t)}function Lg(e){return typeof e==”object”&&”length”in e?e:Array.from(e)}function fc(e){this._context=e}fc.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Rg(e){return new fc(e)}function Ug(e){return e[0]}function Fg(e){return e[1]}function Hg(e,t){var n=An(!0),r=null,i=Rg,s=null,l=Pg(o);e=typeof e==”function”?e:e===void 0?Ug:An(e),t=typeof t==”function”?t:t===void 0?Fg:An(t);function o(a){var c,f=(a=Lg(a)).length,h,u=!1,d;for(r==null&&(s=i(d=l())),c=0;c=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._te[11].call(p)),m(_,”class”,”chart-cont svelte-ndqp4f”),m(t,”id”,”team-record-odds”),oe(t,”–theme-color”,e[3].color),oe(t,”–theme-dark-color”,e[3].dark_color),m(t,”class”,”svelte-ndqp4f”)},m(E,T){J(E,t,T),b(t,n),b(n,r),b(r,i),b(r,l),b(r,o),b(n,a),b(n,c),b(c,f),b(c,u),b(c,d),b(t,g),b(t,_),b(_,p),k&&k.m(p,null),w=Vi(p,e[11].bind(p))},p(E,[T]){T&8&&s!==(s=E[3].display_name+””)&&ae(l,s),T&8&&h!==(h=E[3].display_name+””)&&ae(u,h),E[6]?k?k.p(E,T):(k=oo(E),k.c(),k.m(p,null)):k&&(k.d(1),k=null),T&8&&oe(t,”–theme-color”,E[3].color),T&8&&oe(t,”–theme-dark-color”,E[3].dark_color)},i:Pe,o:Pe,d(E){E&&Z(t),k&&k.d(),w()}}}const jr=2;function zg(e,t,n){let r,i,s,l,o,a,{team:c}=t,{recordOdds:f}=t;const h={top:15,bottom:45,left:35,right:15};let u;var d=window.matchMedia(“(max-width: 767px)”);let g=d.matches?250:350;function _(){u=this.clientWidth,n(0,u)}return e.$$set=p=>{“team”in p&&n(9,c=p.team),”recordOdds”in p&&n(10,f=p.recordOdds)},e.$$.update=()=>{e.$$.dirty&1536&&n(3,r=f.find(p=>p.team==c)),e.$$.dirty&8&&n(1,i=r.odds),e.$$.dirty&2&&n(2,s=Array.from(Array(i.length).keys())),e.$$.dirty&5&&n(6,l=Ue.scaleBand(s,[h.left,u-h.right])),e.$$.dirty&2&&n(5,o=Ue.scaleLinear().domain([0,Math.max(Ue.max(i,p=>p.odds),20)]).range([g-h.bottom,h.top])),e.$$.dirty&2&&n(4,a=Array.from({length:Math.max(Ue.max(i,p=>p.odds),20)/10+1},(p,w)=>w*10))},[u,i,s,r,a,o,l,h,g,c,f,_]}class Bg extends mt{constructor(t){super(),dt(this,t,zg,Wg,ht,{team:9,recordOdds:10})}}function ho(e,t,n){const r=e.slice();return r[27]=t[n].col,r[28]=t[n].hed,r[29]=t[n].dek,r[30]=t,r[31]=n,r}function mo(e,t,n){const r=e.slice();return r[32]=t[n],r}function go(e){let t,n,r,i;return{c(){t=de(“circle”),m(t,”class”,”non-active-team svelte-1wlyico”),m(t,”role”,”graphics-object”),m(t,”data-team”,n=e[32].team),m(t,”r”,xt),m(t,”cx”,r=e[32].pos[e[27]].x),m(t,”cy”,i=e[32].pos[e[27]].y),m(t,”stroke”,”#A9A9A5″),m(t,”stroke-width”,”1px”)},m(s,l){J(s,t,l)},p(s,l){l[0]&1&&n!==(n=s[32].team)&&m(t,”data-team”,n),l[0]&1&&r!==(r=s[32].pos[s[27]].x)&&m(t,”cx”,r),l[0]&1&&i!==(i=s[32].pos[s[27]].y)&&m(t,”cy”,i)},d(s){s&&Z(t)}}}function _o(e){let t=[e[6].team,e[5].team].indexOf(e[32].team)===-1,n,r=t&&go(e);return{c(){r&&r.c(),n=Fn()},m(i,s){r&&r.m(i,s),J(i,n,s)},p(i,s){s[0]&97&&(t=[i[6].team,i[5].team].indexOf(i[32].team)===-1),t?r?r.p(i,s):(r=go(i),r.c(),r.m(n.parentNode,n)):r&&(r.d(1),r=null)},d(i){i&&Z(n),r&&r.d(i)}}}function po(e){let t,n,r,i;return{c(){t=de(“circle”),m(t,”class”,”hover-team svelte-1wlyico”),m(t,”role”,”graphics-object”),m(t,”data-team”,n=e[6].team),m(t,”r”,xt),m(t,”cx”,r=e[6].pos[e[27]].x),m(t,”cy”,i=e[6].pos[e[27]].y),oe(t,”–theme-color”,e[6].color),oe(t,”–theme-dark-color”,e[6].dark_color),m(t,”stroke”,”#222222″),m(t,”stroke-width”,”2px”)},m(s,l){J(s,t,l)},p(s,l){l[0]&64&&n!==(n=s[6].team)&&m(t,”data-team”,n),l[0]&64&&r!==(r=s[6].pos[s[27]].x)&&m(t,”cx”,r),l[0]&64&&i!==(i=s[6].pos[s[27]].y)&&m(t,”cy”,i),l[0]&64&&oe(t,”–theme-color”,s[6].color),l[0]&64&&oe(t,”–theme-dark-color”,s[6].dark_color)},d(s){s&&Z(t)}}}function qg(e){let t,n;return{c(){t=de(“svg”),n=de(“path”),m(n,”id”,”Polygon 1″),m(n,”d”,”M6 3.5L1.91354e-07 6.53109L4.5634e-07 0.468911L6 3.5Z”),m(n,”fill”,”#E4E4E2″),m(n,”class”,”svelte-1wlyico”),m(t,”class”,”arrow-svg svelte-1wlyico”),m(t,”width”,”6″),m(t,”height”,”7″),m(t,”viewBox”,”0 0 6 7″),m(t,”fill”,”none”),m(t,”xmlns”,”http://www.w3.org/2000/svg”)},m(r,i){J(r,t,i),b(t,n)},d(r){r&&Z(t)}}}function $g(e){let t,n;return{c(){t=de(“svg”),n=de(“path”),m(n,”id”,”Polygon 1″),m(n,”d”,”M6 3.5L1.91354e-07 6.53109L4.5634e-07 0.468911L6 3.5Z”),m(n,”fill”,”#E4E4E2″),m(n,”class”,”svelte-1wlyico”),m(t,”class”,”arrow-svg svelte-1wlyico”),m(t,”width”,”6″),m(t,”height”,”7″),m(t,”viewBox”,”0 0 6 7″),m(t,”fill”,”none”),m(t,”xmlns”,”http://www.w3.org/2000/svg”)},m(r,i){J(r,t,i),b(t,n)},d(r){r&&Z(t)}}}function vo(e){let t,n,r,i,s,l,o,a,c,f,h,u=e[27],d,g,_,p,w,k,E,T,N,I,A,D=e[10](e[27],e[6][e[27]])+””,O,C,x,F,R=e[10](e[27],e[6][e[27]])+””,P,Y,H,X,q,V,ee,ce,ne,fe,ve;const Me=()=>e[12](h,u),ye=()=>e[12](null,u);let B=be(e[0]),se=[];for(let le=0;leWK.
OPPONENT
DATE
TIME
OVER/ UNDER
POINT SPREAD
WIN PROB.
RESULT
* http://hammerjs.github.io/
*
* Copyright (c) 2016 Jorik Tangelder;
* Licensed under the MIT license */(function(e){(function(t,n,r,i){var s=[“”,”webkit”,”Moz”,”MS”,”ms”,”o”],l=n.createElement(“div”),o=”function”,a=Math.round,c=Math.abs,f=Date.now;function h(v,y,M){return setTimeout(E(v,M),y)}function u(v,y,M){return Array.isArray(v)?(d(v,M[y],M),!0):!1}function d(v,y,M){var U;if(v)if(v.forEach)v.forEach(y,M);else if(v.length!==i)for(U=0;U