
| SEASON | NET EPA | OFF EPA | DEF EPA | PTS FOR | PTS AGN |
|---|---|---|---|---|---|
| 2025 | +0.018 | +0.088 | +0.070 | 437 | 371 |
| 2024 | +0.028 | +0.069 | +0.041 | 389 | 436 |
| 2024 | +0.028 | +0.069 | +0.041 | 389 | 436 |
| 2023 | +0.255 | +0.174 | -0.082 | 491 | 298 |
| 2022 | +0.211 | +0.085 | -0.126 | 450 | 277 |
| 2021 | +0.120 | +0.087 | -0.034 | 427 | 365 |
| 2020 | +0.042 | +0.008 | -0.034 | 376 | 390 |
| SEASON | PASS% | 4TH GO% | 3RD CONV% | RZ TD% | PTS/DRV | HALF ADJ |
|---|---|---|---|---|---|---|
| 2025 | 56.6% | 22.7% | 50.7% | 85.0% | 2.0 | -0.016 |
| 2024 | 55.6% | 15.4% | 42.9% | 81.8% | 1.6 | -0.135 |
| 2023 | 52.3% | 14.6% | 47.5% | 86.4% | 2.5 | -0.124 |
| 2022 | 52.7% | 15.7% | 45.2% | 81.0% | 2.0 | -0.069 |
| 2021 | 52.9% | 18.9% | 40.8% | 81.8% | 1.9 | +0.032 |
| 2020 | 58.9% | 14.4% | 39.3% | 70.0% | 1.7 | -0.006 |
| PLAYER | POS | GP | PASS YD | RUSH YD | REC YD | TD | PPR |
|---|---|---|---|---|---|---|---|
| B.Purdy | QB | 9 | 2,167 | 147 | — | 23 | 177.4 |
| C.McCaffrey | RB | 17 | — | 1,202 | 924 | 17 | 416.6 |
| B.Robinson | RB | 17 | — | 400 | 25 | 2 | 62.5 |
| J.Jennings | WR | 15 | — | — | 643 | 9 | 173.3 |
| K.Bourne | WR | 14 | — | — | 551 | 0 | 92.1 |
| R.Pearsall | WR | 9 | — | — | 528 | 0 | 88.6 |
| G.Kittle | TE | 11 | — | — | 628 | 7 | 161.5 |
| Week | Matchup | Our Pick | Tier | Conf. | Score | Result |
|---|---|---|---|---|---|---|
| 2025·W18 | SEA @ SFSAT 8:00 PM | SF | B | 60% | SEA 13–3 SF | LOSS |
| 2025·W17 | CHI @ SFSUN 8:20 PM | SF | B | 62% | CHI 38–42 SF | WIN |
| 2025·W16 | SF @ INDMON 8:15 PM | SF | B | 62% | SF 48–27 IND | WIN |
| 2025·W15 | TEN @ SFSUN 4:25 PM | SF | S | 82% | TEN 24–37 SF | WIN |
| 2025·W13 | SF @ CLESUN 1:00 PM | SF | A | 72% | SF 26–8 CLE | WIN |
| 2025·W12 | CAR @ SFMON 8:15 PM | SF | B | 66% | CAR 9–20 SF | WIN |
| 2025·W11 | SF @ ARISUN 4:05 PM | SF | C | 65% | SF 41–22 ARI | WIN |
| 2025·W10 | LA @ SFSUN 4:25 PM | LA | B | 66% | LA 42–26 SF | WIN (vs) |
| 2025·W9 | SF @ NYGSUN 1:00 PM | SF | B | 68% | SF 34–24 NYG | WIN |
| 2025·W8 | SF @ HOUSUN 1:00 PM | SF | C | 60% | SF 15–26 HOU | LOSS |
| 2025·W7 | ATL @ SFSUN 8:20 PM | SF | C | 59% | ATL 10–20 SF | WIN |
| 2025·W6 | SF @ TBSUN 4:25 PM | TB | B | 67% | SF 19–30 TB | WIN (vs) |
| 2025·W5 | SF @ LATHU 8:15 PM | LA | A | 72% | SF 26–23 LA | LOSS (vs) |
| 2025·W4 | JAX @ SFSUN 4:05 PM | SF | C | 64% | JAX 26–21 SF | LOSS |
| 2025·W3 | ARI @ SFSUN 4:25 PM | ARI | C | 59% | ARI 15–16 SF | LOSS (vs) |
| 2025·W2 | SF @ NOSUN 1:00 PM | SF | B | 63% | SF 26–21 NO | WIN |
| 2025·W1 | SF @ SEASUN 4:05 PM | SEA | B | 63% | SF 17–13 SEA | LOSS (vs) |
| 2024·W18 | SF @ ARISUN 4:25 PM | ARI | B | 65% | SF 24–47 ARI | WIN (vs) |
| 2024·W17 | DET @ SFMON 8:15 PM | DET | A | 71% | DET 40–34 SF | WIN (vs) |
| 2024·W16 | SF @ MIASUN 4:25 PM | MIA | C | 60% | SF 17–29 MIA | WIN (vs) |
| 2024·W15 | LA @ SFTHU 8:15 PM | LA | C | 50% | LA 12–6 SF | WIN (vs) |
| 2024·W14 | CHI @ SFSUN 4:25 PM | SF | B | 68% | CHI 13–38 SF | WIN |
| 2024·W13 | SF @ BUFSUN 8:20 PM | BUF | A+ | 75% | SF 10–35 BUF | WIN (vs) |
| 2024·W12 | SF @ GBSUN 4:25 PM | GB | C | 66% | SF 10–38 GB | WIN (vs) |
| 2024·W11 | SEA @ SFSUN 4:05 PM | SF | A | 70% | SEA 20–17 SF | LOSS |
| 2024·W10 | SF @ TBSUN 1:00 PM | SF | B | 63% | SF 23–20 TB | WIN |
| 2024·W8 | DAL @ SFSUN 8:20 PM | SF | B | 62% | DAL 24–30 SF | WIN |
| 2024·W7 | KC @ SFSUN 4:25 PM | KC | C | 60% | KC 28–18 SF | WIN (vs) |
| 2024·W6 | SF @ SEATHU 8:15 PM | SF | C | 60% | SF 36–24 SEA | WIN |
| 2024·W5 | ARI @ SFSUN 4:05 PM | SF | A+ | 73% | ARI 24–23 SF | LOSS |
| 2024·W4 | NE @ SFSUN 4:05 PM | SF | A+ | 73% | NE 13–30 SF | WIN |
| 2024·W3 | SF @ LASUN 4:25 PM | SF | B | 62% | SF 24–27 LA | LOSS |
| 2024·W2 | SF @ MINSUN 1:00 PM | SF | B | 67% | SF 17–23 MIN | LOSS |
| 2024·W1 | NYJ @ SFMON 8:15 PM | SF | A+ | 72% | NYJ 19–32 SF | WIN |
| 2023·W18 | LA @ SFSUN 4:25 PM | SF | B | 71% | LA 21–20 SF | LOSS |
| 2023·W17 | SF @ WASSUN 1:00 PM | SF | A+ | 78% | SF 27–10 WAS | WIN |
| 2023·W16 | BAL @ SFMON 8:15 PM | SF | B | 66% | BAL 33–19 SF | LOSS |
| 2023·W15 | SF @ ARISUN 4:05 PM | SF | A+ | 75% | SF 45–29 ARI | WIN |
| 2023·W14 | SEA @ SFSUN 4:05 PM | SF | A+ | 78% | SEA 16–28 SF | WIN |
| 2023·W13 | SF @ PHISUN 4:25 PM | PHI | C | 56% | SF 42–19 PHI | LOSS (vs) |
| 2023·W12 | SF @ SEATHU 8:20 PM | SF | B | 64% | SF 31–13 SEA | WIN |
| 2023·W11 | TB @ SFSUN 4:05 PM | SF | A | 72% | TB 14–27 SF | WIN |
| 2023·W10 | SF @ JAXSUN 1:00 PM | JAX | C | 61% | SF 34–3 JAX | LOSS (vs) |
| 2023·W8 | CIN @ SFSUN 4:25 PM | SF | B | 65% | CIN 31–17 SF | LOSS |
| 2023·W7 | SF @ MINMON 8:15 PM | SF | B | 68% | SF 17–22 MIN | LOSS |
| 2023·W6 | SF @ CLESUN 1:00 PM | SF | A+ | 79% | SF 17–19 CLE | LOSS |
| 2023·W5 | DAL @ SFSUN 8:20 PM | SF | B | 66% | DAL 10–42 SF | WIN |
| 2023·W4 | ARI @ SFSUN 4:25 PM | SF | S | 83% | ARI 16–35 SF | WIN |
| 2023·W3 | NYG @ SFTHU 8:15 PM | SF | A+ | 79% | NYG 12–30 SF | WIN |
| 2023·W2 | SF @ LASUN 4:05 PM | SF | A+ | 75% | SF 30–23 LA | WIN |
| 2023·W1 | SF @ PITSUN 1:00 PM | SF | B | 61% | SF 30–7 PIT | WIN |
| 2022·W18 | ARI @ SFSUN 4:25 PM | SF | S | 84% | ARI 13–38 SF | WIN |
| 2022·W17 | SF @ LVSUN 4:05 PM | SF | B | 67% | SF 37–34 LV | WIN |
| 2022·W16 | WAS @ SFSAT 4:05 PM | SF | A | 72% | WAS 20–37 SF | WIN |
| 2022·W15 | SF @ SEATHU 8:15 PM | SF | B | 66% | SF 21–13 SEA | WIN |
| 2022·W14 | TB @ SFSUN 4:25 PM | SF | B | 63% | TB 7–35 SF | WIN |
| 2022·W13 | MIA @ SFSUN 4:05 PM | SF | B | 60% | MIA 17–33 SF | WIN |
| 2022·W12 | NO @ SFSUN 4:25 PM | SF | B | 70% | NO 0–13 SF | WIN |
| 2022·W11 | SF @ ARIMON 8:15 PM | SF | B | 64% | SF 38–10 ARI | WIN |
| 2022·W10 | LAC @ SFSUN 8:20 PM | LAC | C | 50% | LAC 16–22 SF | LOSS (vs) |
| 2022·W8 | SF @ LASUN 4:25 PM | LA | B | 61% | SF 31–14 LA | LOSS (vs) |
| 2022·W7 | KC @ SFSUN 4:25 PM | KC | C | 60% | KC 44–23 SF | WIN (vs) |
| 2022·W6 | SF @ ATLSUN 1:00 PM | SF | B | 69% | SF 14–28 ATL | LOSS |
| 2022·W5 | SF @ CARSUN 4:05 PM | SF | A+ | 74% | SF 37–15 CAR | WIN |
| 2022·W4 | LA @ SFMON 8:15 PM | SF | C | 50% | LA 9–24 SF | WIN |
| 2022·W3 | SF @ DENSUN 8:20 PM | SF | B | 67% | SF 10–11 DEN | LOSS |
| 2022·W2 | SEA @ SFSUN 4:05 PM | SF | B | 60% | SEA 7–27 SF | WIN |
| 2022·W1 | SF @ CHISUN 1:00 PM | SF | B | 69% | SF 10–19 CHI | LOSS |
| 2021·W18 | SF @ LASUN 4:25 PM | LA | B | 57% | SF 27–24 LA | LOSS (vs) |
| 2021·W17 | HOU @ SFSUN 4:05 PM | SF | B | 63% | HOU 7–23 SF | WIN |
| 2021·W16 | SF @ TENTHU 8:20 PM | SF | B | 52% | SF 17–20 TEN | LOSS |
| 2021·W15 | ATL @ SFSUN 4:05 PM | SF | B | 57% | ATL 13–31 SF | WIN |
| 2021·W14 | SF @ CINSUN 4:25 PM | CIN | C | 49% | SF 26–23 CIN | LOSS (vs) |
| 2021·W13 | SF @ SEASUN 4:25 PM | SF | B | 60% | SF 23–30 SEA | LOSS |
| 2021·W12 | MIN @ SFSUN 4:25 PM | MIN | C | 51% | MIN 26–34 SF | LOSS (vs) |
| 2021·W11 | SF @ JAXSUN 1:00 PM | SF | B | 61% | SF 30–10 JAX | WIN |
| 2021·W10 | LA @ SFMON 8:15 PM | LA | B | 65% | LA 10–31 SF | LOSS (vs) |
| 2021·W9 | ARI @ SFSUN 4:25 PM | ARI | B | 60% | ARI 31–17 SF | WIN (vs) |
| 2021·W8 | SF @ CHISUN 1:00 PM | CHI | C | 51% | SF 33–22 CHI | LOSS (vs) |
| 2021·W7 | IND @ SFSUN 8:20 PM | IND | B | 57% | IND 30–18 SF | WIN (vs) |
| 2021·W5 | SF @ ARISUN 4:25 PM | ARI | B | 60% | SF 10–17 ARI | WIN (vs) |
| 2021·W4 | SEA @ SFSUN 4:05 PM | SEA | C | 52% | SEA 28–21 SF | WIN (vs) |
| 2021·W3 | GB @ SFSUN 8:20 PM | GB | B | 58% | GB 30–28 SF | WIN (vs) |
| 2021·W2 | SF @ PHISUN 1:00 PM | SF | C | 54% | SF 17–11 PHI | WIN |
| 2021·W1 | SF @ DETSUN 1:00 PM | SF | B | 60% | SF 41–33 DET | WIN |
| 2020·W17 | SEA @ SFSUN 4:25 PM | SEA | B | 59% | SEA 26–23 SF | WIN (vs) |
| 2020·W16 | SF @ ARISAT 4:30 PM | ARI | B | 60% | SF 20–12 ARI | LOSS (vs) |
| 2020·W15 | SF @ DALSUN 1:00 PM | SF | C | 52% | SF 33–41 DAL | LOSS |
| 2020·W14 | WAS @ SFSUN 4:25 PM | SF | B | 54% | WAS 23–15 SF | LOSS |
| 2020·W13 | BUF @ SFMON 8:15 PM | BUF | C | 51% | BUF 34–24 SF | WIN (vs) |
| 2020·W12 | SF @ LASUN 4:05 PM | LA | B | 63% | SF 23–20 LA | LOSS (vs) |
| 2020·W10 | SF @ NOSUN 4:25 PM | NO | B | 63% | SF 13–27 NO | WIN (vs) |
| 2020·W9 | GB @ SFTHU 8:20 PM | GB | C | 50% | GB 34–17 SF | WIN (vs) |
| 2020·W8 | SF @ SEASUN 4:25 PM | SF | C | 49% | SF 27–37 SEA | LOSS |
| 2020·W7 | SF @ NESUN 4:25 PM | SF | C | 49% | SF 33–6 NE | WIN |
| 2020·W6 | LA @ SFSUN 8:20 PM | LA | B | 55% | LA 16–24 SF | LOSS (vs) |
| 2020·W5 | MIA @ SFSUN 4:05 PM | SF | B | 62% | MIA 43–17 SF | LOSS |
| 2020·W4 | PHI @ SFSUN 8:20 PM | SF | B | 62% | PHI 25–20 SF | LOSS |
| 2020·W3 | SF @ NYGSUN 1:00 PM | SF | A+ | 66% | SF 36–9 NYG | WIN |
| 2020·W2 | SF @ NYJSUN 1:00 PM | SF | B | 59% | SF 31–13 NYJ | WIN |
| 2020·W1 | ARI @ SFSUN 4:25 PM | SF | A+ | 64% | ARI 24–20 SF | LOSS |