{"id":26635,"date":"2026-07-23T10:21:16","date_gmt":"2026-07-23T14:21:16","guid":{"rendered":"https:\/\/www.squawka.com\/us\/?post_type=news&#038;p=26635"},"modified":"2026-07-23T10:23:22","modified_gmt":"2026-07-23T14:23:22","slug":"match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls","status":"publish","type":"news","link":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/","title":{"rendered":"Portland Timbers vs Real Salt Lake: Predictions, Picks, Odds &#038; Lineups"},"content":{"rendered":"\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"SportsEvent\",\"name\":\"Portland Timbers vs Real Salt Lake\",\"description\":\"MLS preview: prediction, odds, lineups and stats for Portland Timbers vs Real Salt Lake.\",\"sport\":\"Soccer\",\"startDate\":\"2026-07-25T22:30:00-04:00\",\"eventStatus\":\"https:\/\/schema.org\/EventScheduled\",\"eventAttendanceMode\":\"https:\/\/schema.org\/OfflineEventAttendanceMode\",\"location\":{\"@type\":\"Place\",\"name\":\"Providence Park\",\"address\":{\"@type\":\"PostalAddress\",\"addressLocality\":\"Portland\",\"addressCountry\":\"US\"}},\"image\":[\"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/07\/23074300\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg\"],\"homeTeam\":{\"@type\":\"SportsTeam\",\"name\":\"Portland Timbers\"},\"awayTeam\":{\"@type\":\"SportsTeam\",\"name\":\"Real Salt Lake\"},\"competitor\":[{\"@type\":\"SportsTeam\",\"name\":\"Portland Timbers\"},{\"@type\":\"SportsTeam\",\"name\":\"Real Salt Lake\"}],\"organizer\":{\"@type\":\"Organization\",\"name\":\"Major League Soccer\"},\"url\":\"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/\"}\n<\/script>\n\n\n<p><strong>Portland Timbers host Real Salt Lake at Providence Park on Saturday, July 25 at 10:30 PM ET \/ 9:30 PM CT \/ 7:30 PM PT, two Western Conference sides pulling in opposite directions.<\/strong><\/p>\n\n<p>Our Portland Timbers vs Real Salt Lake prediction leans toward the home side in an <a href=\"https:\/\/www.squawka.com\/us\/mls\/\">MLS Western Conference<\/a> clash that should have goals. The Timbers sit 12th in the West and below the playoff cut-off, but they thrashed Seattle 5-1 last time on the road and have found the net in each of their last three. Real Salt Lake come in fourth, inside the top-nine playoff line with a game in hand, yet they were beaten 3-1 at LAFC in midweek.<\/p>\n\n<p>That eight-point gap between the two clubs has not scared the bookmakers. bet365 price Portland at +130 to win at home, with Real Salt Lake out to +157 and the draw at +275 &#8212; a rare case of the lower-placed side being favored, driven by home advantage and a Timbers attack that keeps scoring.<\/p>\n\n\n<style>\n.sq-bpg{--lime:#a8e039;--glow:#c8f24c;--tx:#f4f8f1;--mut:rgba(244,248,241,.62);--line:rgba(255,255,255,.10);--gold:#F7B500;--b365:#ffdd00;position:relative;overflow:hidden;isolation:isolate;font-family:'Bricolage Grotesque',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--tx);max-width:960px;margin:12px auto 30px;border-radius:18px;background:radial-gradient(70% 90% at 18% 0%,rgba(168,224,57,.20) 0%,rgba(168,224,57,0) 60%),linear-gradient(135deg,#0e3f29 0%,#0a2c1f 60%,#08251a 100%);box-shadow:0 18px 44px rgba(10,44,31,.32)}\n.sq-bpg *{box-sizing:border-box}\n.sq-bpg::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background-image:url(\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20preserveAspectRatio%3D%22xMidYMid%20slice%22%20viewBox%3D%220%200%203000%203000%22%3E%3Cdefs%3E%3Cpattern%20id%3D%22a%22%20width%3D%2278%22%20height%3D%22175.5%22%20x%3D%220%22%20y%3D%220%22%20patternTransform%3D%22rotate%28-45%29%22%20patternUnits%3D%22userSpaceOnUse%22%3E%3Cpath%20fill%3D%22%2303261a%22%20d%3D%22m-38.22%20157.05-.78-78%2078-.78c.45%2043.12-34.12%2078.33-77.22%2078.78%22%2F%3E%3Cpath%20fill%3D%22%2303261a%22%20d%3D%22M77.22%200%2078%2081.6l-78%20.78C-.45%2035.67%2034.12.45%2077.22%200%22%2F%3E%3Cpath%20fill%3D%22%2303261a%22%20d%3D%22m37.78%20158.05-.78-78%2078-.78c.45%2043.12-34.12%2078.33-77.22%2078.78%22%2F%3E%3C%2Fpattern%3E%3C%2Fdefs%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20fill%3D%22url%28%23a%29%22%2F%3E%3C%2Fsvg%3E\");background-position:top left;background-size:380px 380px;opacity:.4}\n.sq-bpg__r{position:absolute;width:0;height:0;opacity:0;pointer-events:none}\n.sq-bpg__wrap{position:relative;z-index:1;padding:26px 30px 24px}\n.sq-bpg__tag{display:inline-flex;align-items:center;gap:9px;border:1.5px solid rgba(168,224,57,.55);border-radius:999px;padding:7px 16px;color:var(--lime);font-weight:800;font-size:12px;letter-spacing:2.4px;text-transform:uppercase;background:rgba(10,44,31,.4)}\n.sq-bpg__tag::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px 1px var(--glow)}\n.sq-bpg__ttl{font-size:26px;font-weight:800;letter-spacing:-.3px;line-height:1.12;margin:0;color:var(--tx)}\n.sq-bpg__sub{margin:8px 0 0;font-size:14.5px;line-height:1.5;color:var(--mut);max-width:70ch}\n.sq-bpg__perf{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}\n.sq-bpg__perf-h{font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--lime)}\n.sq-bpg__chip{font-size:12.5px;color:var(--mut);background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:999px;padding:4px 11px}\n.sq-bpg__chip b{color:var(--tx)}\n.sq-bpg__chip--big{background:var(--lime);color:#08251a;border-color:var(--lime)}\n.sq-bpg__chip--big b{color:#08251a}\n.sq-bpg__siglink{margin-left:auto;font-size:13px;font-weight:700;color:var(--lime);text-decoration:none;border-bottom:2px solid rgba(168,224,57,.35)}\n.sq-bpg__geoq{margin-top:18px;font-size:13px;font-weight:700;color:var(--tx)}\n.sq-bpg__toggle{display:flex;gap:6px;margin-top:9px}\n.sq-bpg__tab{flex:1;text-align:center;cursor:pointer;user-select:none;font-size:14.5px;font-weight:800;line-height:1.2;padding:10px;border-radius:11px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--mut);transition:.15s}\n.sq-bpg__tab span{display:block;font-size:11px;font-weight:600;margin-top:3px;opacity:.8}\n.sq-bpg__r--us:checked ~ .sq-bpg__toggle .sq-bpg__tab--us,\n.sq-bpg__r--row:checked ~ .sq-bpg__toggle .sq-bpg__tab--row{background:var(--lime);color:#08251a;border-color:var(--lime)}\n.sq-bpg__list{margin-top:16px;border-top:1px solid var(--line)}\n.sq-bpg__row{display:grid;grid-template-columns:1fr 122px;gap:14px;align-items:center;padding:15px 2px;border-bottom:1px solid var(--line)}\n.sq-bpg__pk{font-size:16px;font-weight:800;line-height:1.25;color:var(--tx)}\n.sq-bpg__top{display:inline-block;vertical-align:middle;margin-left:8px;font-size:10px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:#5b3b00;background:linear-gradient(90deg,#ffe07a,var(--gold));padding:3px 8px;border-radius:6px}\n.sq-bpg__why{display:block;margin-top:5px;font-size:13.5px;line-height:1.5;color:var(--mut)}\n.sq-bpg__pr{text-align:center}\n.sq-bpg__prob{display:block;font-size:26px;font-weight:800;color:var(--lime);line-height:1}\n.sq-bpg__prl{display:block;font-size:10.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--mut);margin-top:3px}\n.sq-bpg__odd{display:none;margin-top:7px;font-size:12.5px;font-weight:700;color:var(--tx);background:rgba(255,255,255,.08);border-radius:7px;padding:3px 8px}\n.sq-bpg__r--row:checked ~ .sq-bpg__list .sq-bpg__odd{display:inline-block}\na.sq-bpg__prob,a.sq-bpg__odd{cursor:pointer}\na.sq-bpg__prob{color:var(--lime);text-decoration:none}\na.sq-bpg__prob:hover{text-decoration:underline}\na.sq-bpg__odd{text-decoration:none}\na.sq-bpg__odd:hover{filter:brightness(1.08)}\n.sq-bpg__r--row:checked ~ .sq-bpg__list a.sq-bpg__prob{pointer-events:none;cursor:default}\n.sq-bpg__approach{margin:15px 0 0;font-size:13.5px;line-height:1.55;color:var(--tx)}\n.sq-bpg__panel{display:none;margin-top:16px}\n.sq-bpg__r--us:checked ~ .sq-bpg__panel--us{display:block}\n.sq-bpg__r--row:checked ~ .sq-bpg__panel--row{display:block}\n.sq-bpg__act{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 18px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--line)}\n.sq-bpg__act-txt{flex:1;min-width:200px}\n.sq-bpg__act-txt b{display:block;font-size:16px;color:var(--tx)}\n.sq-bpg__act-txt span{display:block;font-size:13px;color:var(--mut);margin-top:2px}\n.sq-bpg__cta{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:800;text-decoration:none;padding:13px 22px;border-radius:11px;white-space:nowrap}\n.sq-bpg__cta--kal{background:linear-gradient(135deg,var(--lime),var(--glow));color:#08251a;box-shadow:0 8px 18px rgba(168,224,57,.28)}\n.sq-bpg__cta--b365{background:var(--b365);color:#1a1a1a;box-shadow:0 8px 18px rgba(0,0,0,.28)}\n.sq-bpg__altsdiv{height:1px;background:var(--line);margin:16px 0 0}\n.sq-bpg__altslead{margin:14px 0 0;font-size:13px;color:var(--mut)}\n.sq-bpg__altslead a{color:var(--lime);font-weight:700;text-decoration:none;border-bottom:1px solid rgba(168,224,57,.35)}\n.sq-bpg__altsrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}\n.sq-bpg__altsbtn{flex:1 1 160px;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:11px 16px;border-radius:11px;background:#5a26d6;border:1px solid rgba(255,255,255,.10);color:#fff;font-weight:800;font-size:14px;text-decoration:none;box-shadow:0 4px 14px rgba(90,38,214,.30);transition:.15s}\n.sq-bpg__altsbtn:hover{background:#6b34e8}\n.sq-bpg__altsbtn img{height:18px;width:auto;display:block;filter:brightness(0) invert(1);opacity:.97}\n.sq-bpg__disc{margin:12px 0 0;font-size:11.5px;line-height:1.5;color:rgba(244,248,241,.5)}\n@media(max-width:640px){\n .sq-bpg__wrap{padding:22px 16px 20px}\n .sq-bpg__ttl{font-size:21px}\n .sq-bpg__sub{font-size:14px}\n .sq-bpg__perf{gap:7px}\n .sq-bpg__siglink{margin-left:0;flex-basis:100%;margin-top:2px}\n .sq-bpg__row{grid-template-columns:1fr 96px;gap:10px}\n .sq-bpg__prob{font-size:22px}\n .sq-bpg__odd{font-size:11px;padding:2px 6px;line-height:1.3}\n .sq-bpg__act{padding:14px}\n .sq-bpg__act-txt{min-width:0}\n .sq-bpg__cta{width:100%;justify-content:center}\n .sq-bpg__altsbtn{flex:1 1 120px}\n}\n@media(max-width:400px){\n .sq-bpg__ttl{font-size:19px}\n .sq-bpg__pk{font-size:15px}\n .sq-bpg__why{font-size:12.5px}\n .sq-bpg__row{grid-template-columns:1fr 82px}\n .sq-bpg__prob{font-size:19px}\n .sq-bpg__altsbtn{flex:1 1 100%}\n}\n<\/style>\n\n<div class=\"sq-bpg\" id=\"sq-bpg-porrsl25\">\n <div class=\"sq-bpg__wrap\">\n  <input class=\"sq-bpg__r sq-bpg__r--us\" type=\"radio\" name=\"sqbpg-geo-porrsl25\" id=\"sqbpg-us-porrsl25\" checked>\n  <input class=\"sq-bpg__r sq-bpg__r--row\" type=\"radio\" name=\"sqbpg-geo-porrsl25\" id=\"sqbpg-row-porrsl25\">\n\n  <h2 class=\"sq-bpg__ttl\">Portland Timbers vs Real Salt Lake: Best Bets &amp; Predictions<\/h2>\n  <p class=\"sq-bpg__sub\">bet365 make the Timbers home favorites and the market sees goals at both ends, so the value sits in Portland edging an open night at Providence Park with both sides on the scoresheet.<\/p>\n\n  <div class=\"sq-bpg__geoq\">Where are you following from? Odds &amp; offers below update to match.<\/div>\n  <div class=\"sq-bpg__toggle\" role=\"tablist\">\n    <label class=\"sq-bpg__tab sq-bpg__tab--us\" for=\"sqbpg-us-porrsl25\">&#127482;&#127480; United States<span>Trade on Kalshi<\/span><\/label>\n    <label class=\"sq-bpg__tab sq-bpg__tab--row\" for=\"sqbpg-row-porrsl25\">&#127758; Outside the US<span>Odds via bet365<\/span><\/label>\n  <\/div>\n\n  <div class=\"sq-bpg__list\">\n    <div class=\"sq-bpg__row\" data-market=\"Result\" data-selection=\"Portland Timbers to Win\" data-prob=\"40\" data-odds=\"+130\">\n      <div><span class=\"sq-bpg__pk\">Portland Timbers to Win<\/span><span class=\"sq-bpg__top\">Top pick<\/span><span class=\"sq-bpg__why\">Home favorites despite sitting 12th in the West, and coming off a 5-1 romp at Seattle. RSL arrive on the back of a 3-1 loss at LAFC.<\/span><\/div>\n      <div class=\"sq-bpg__pr\"><a class=\"sq-bpg__prob\" href=\"https:\/\/www.squawka.com\/en\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">40%<\/a><span class=\"sq-bpg__prl\">win prob.<\/span><a class=\"sq-bpg__odd\" href=\"https:\/\/www.squawka.com\/en\/go\/bet365?q=us-sg1-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">+130 @ bet365<\/a><\/div>\n    <\/div>\n    <div class=\"sq-bpg__row\" data-market=\"Anytime Goalscorer\" data-selection=\"Kevin Kelsy\" data-prob=\"40\" data-odds=\"+150\" data-player-id=\"8ltfiij3qyqa5jo47ws7k2r6c\">\n      <div><span class=\"sq-bpg__pk\"><strong data-player-id=\"8ltfiij3qyqa5jo47ws7k2r6c\">Kevin Kelsy<\/strong> to score anytime<\/span><span class=\"sq-bpg__why\">Eight goals already this season from 33 attempts, 14 of them on target, and the shortest-priced Portland scorer against an RSL back line beaten in each of its last three. Priced from bet365.<\/span><\/div>\n      <div class=\"sq-bpg__pr\"><a class=\"sq-bpg__prob\" href=\"https:\/\/www.squawka.com\/en\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">40%<\/a><span class=\"sq-bpg__prl\">chance<\/span><a class=\"sq-bpg__odd\" href=\"https:\/\/www.squawka.com\/en\/go\/bet365?q=us-sg1-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">+150 @ bet365<\/a><\/div>\n    <\/div>\n    <div class=\"sq-bpg__row\" data-market=\"Both Teams to Score\" data-selection=\"Yes\" data-prob=\"69\" data-odds=\"-250\">\n      <div><span class=\"sq-bpg__pk\">Both Teams to Score: Yes<\/span><span class=\"sq-bpg__why\">Real Salt Lake have scored in each of their last seven and Portland have conceded in each of their last five. A goal each way is the percentage read.<\/span><\/div>\n      <div class=\"sq-bpg__pr\"><a class=\"sq-bpg__prob\" href=\"https:\/\/www.squawka.com\/en\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">69%<\/a><span class=\"sq-bpg__prl\">chance<\/span><a class=\"sq-bpg__odd\" href=\"https:\/\/www.squawka.com\/en\/go\/bet365?q=us-sg1-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">-250 @ bet365<\/a><\/div>\n    <\/div>\n    <div class=\"sq-bpg__row\" data-market=\"Over 2.5 Goals\" data-selection=\"Over 2.5\" data-prob=\"67\" data-odds=\"-211\">\n      <div><span class=\"sq-bpg__pk\">Over 2.5 Goals<\/span><span class=\"sq-bpg__why\">The Timbers have traded goals all summer &#8212; a 5-1, a 2-2 and a leaky run at the back &#8212; and RSL keep finding the net. Two open defenses point to a high-scoring night.<\/span><\/div>\n      <div class=\"sq-bpg__pr\"><a class=\"sq-bpg__prob\" href=\"https:\/\/www.squawka.com\/en\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">67%<\/a><span class=\"sq-bpg__prl\">chance<\/span><a class=\"sq-bpg__odd\" href=\"https:\/\/www.squawka.com\/en\/go\/bet365?q=us-sg1-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">-211 @ bet365<\/a><\/div>\n    <\/div>\n    <div class=\"sq-bpg__row\" data-market=\"Correct Score\" data-selection=\"Portland Timbers 2-1\" data-prob=\"10\" data-odds=\"+900\">\n      <div><span class=\"sq-bpg__pk\">Correct Score: Portland Timbers 2-1<\/span><span class=\"sq-bpg__why\">The natural shape of an open home win, tying the result, the Over and both-teams-to-score into one line. Priced from bet365.<\/span><\/div>\n      <div class=\"sq-bpg__pr\"><a class=\"sq-bpg__prob\" href=\"https:\/\/www.squawka.com\/en\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">10%<\/a><span class=\"sq-bpg__prl\">chance<\/span><a class=\"sq-bpg__odd\" href=\"https:\/\/www.squawka.com\/en\/go\/bet365?q=us-sg1-all-wof-s-spo\" rel=\"sponsored nofollow noopener\" target=\"_blank\">+900 @ bet365<\/a><\/div>\n    <\/div>\n  <\/div>\n\n  <p class=\"sq-bpg__approach\"><b>Our approach:<\/b> anchor on Portland Timbers to win, add Kevin Kelsy to score anytime, and treat a 2-1 home win as the natural scoreline in a game that should have goals.<\/p>\n\n  <div class=\"sq-bpg__panel sq-bpg__panel--us\">\n    <div class=\"sq-bpg__act\">\n      <div class=\"sq-bpg__act-txt\"><b>Trade these markets on Kalshi<\/b><span>New users: USE CODE SQUAWKA. Prices update live.<\/span><\/div>\n      <a class=\"sq-bpg__cta sq-bpg__cta--kal\" href=\"https:\/\/www.squawka.com\/en\/go\/kalshi?q=us-all-all-wof-s-spo\" rel=\"sponsored nofollow\" target=\"_blank\">Trade on Kalshi &rarr;<\/a>\n    <\/div>\n    <div class=\"sq-bpg__altsdiv\"><\/div>\n    <p class=\"sq-bpg__altslead\">If Kalshi isn&rsquo;t your choice, we also rate <a href=\"https:\/\/www.squawka.com\/us\/bet\/betting-sites\/polymarket\/\">Polymarket<\/a> and <a href=\"https:\/\/www.squawka.com\/us\/bet\/betting-sites\/prophetx\/\">ProphetX<\/a> &mdash; or compare the full lineup.<\/p>\n    <div class=\"sq-bpg__altsrow\">\n      <a class=\"sq-bpg__altsbtn\" href=\"https:\/\/www.squawka.com\/en\/go\/polymarket?q=us-sg1-all-wof-s-spo\" rel=\"nofollow sponsored noopener\" target=\"_blank\"><img decoding=\"async\" src=\"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/04\/06101144\/polymarket-1.svg\" alt=\"Polymarket\" loading=\"lazy\" \/><\/a>\n      <a class=\"sq-bpg__altsbtn\" href=\"https:\/\/www.squawka.com\/en\/go\/prophet-x?q=us-sg1-all-wof-s-spo\" rel=\"nofollow sponsored noopener\" target=\"_blank\"><img decoding=\"async\" src=\"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/06\/12062936\/ProphetX.svg\" alt=\"ProphetX\" loading=\"lazy\" \/><\/a>\n      <a class=\"sq-bpg__altsbtn\" href=\"https:\/\/www.squawka.com\/us\/bet\/best-prediction-markets\/\">Compare All &rarr;<\/a>\n    <\/div>\n    <p class=\"sq-bpg__disc\">Probabilities reflect live Kalshi market prices at time of loading. 21+. Prediction markets are CFTC-regulated event contracts, not sportsbook bets. Please play responsibly. Gambling Problem? Call 1-800-GAMBLER. New Kalshi users: USE CODE SQUAWKA.<\/p>\n  <\/div>\n\n  <div class=\"sq-bpg__panel sq-bpg__panel--row\">\n    <div class=\"sq-bpg__act\">\n      <div class=\"sq-bpg__act-txt\"><b>Back these with bet365<\/b><span>Odds shown for your region &#8212; toggle the odds beside each pick above.<\/span><\/div>\n      <a class=\"sq-bpg__cta sq-bpg__cta--b365\" href=\"https:\/\/www.squawka.com\/en\/go\/bet365?q=us-sg1-con-wof-s-spo\" rel=\"sponsored nofollow\" target=\"_blank\">Bet with bet365 &rarr;<\/a>\n    <\/div>\n    <p class=\"sq-bpg__disc\">Odds correct at time of writing and shown in American format for illustration; your local odds and offer are served on click. Eligibility, minimum age (18+\/21+) and T&amp;Cs vary by region. Please gamble responsibly.<\/p>\n  <\/div>\n <\/div>\n<\/div>\n\n\n<h2>Season Form &amp; Standings<\/h2>\n\n<p>Real Salt Lake carry the better body of work into this one, and the <a href=\"https:\/\/www.squawka.com\/us\/mls-standings-2026\/\">Western Conference standings<\/a> bear it out: 27 goals scored, a positive difference and 26 points from 15 games, against a Portland side who have leaked 31 times in 16. Both, though, arrive off contrasting midweek nights &#8212; the Timbers holding FC Dallas to a 2-2 draw, RSL falling at LAFC.<\/p>\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><thead><tr><th>Western Conference<\/th><th class=\"has-text-align-center\" data-align=\"center\">Pos<\/th><th class=\"has-text-align-center\" data-align=\"center\">GP<\/th><th class=\"has-text-align-center\" data-align=\"center\">W<\/th><th class=\"has-text-align-center\" data-align=\"center\">D<\/th><th class=\"has-text-align-center\" data-align=\"center\">L<\/th><th class=\"has-text-align-center\" data-align=\"center\">GF<\/th><th class=\"has-text-align-center\" data-align=\"center\">GA<\/th><th class=\"has-text-align-center\" data-align=\"center\">GD<\/th><th class=\"has-text-align-center\" data-align=\"center\">Pts<\/th><\/tr><\/thead><tbody>\n<tr><td><strong>Real Salt Lake<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">4<\/td><td class=\"has-text-align-center\" data-align=\"center\">15<\/td><td class=\"has-text-align-center\" data-align=\"center\">8<\/td><td class=\"has-text-align-center\" data-align=\"center\">2<\/td><td class=\"has-text-align-center\" data-align=\"center\">5<\/td><td class=\"has-text-align-center\" data-align=\"center\">27<\/td><td class=\"has-text-align-center\" data-align=\"center\">22<\/td><td class=\"has-text-align-center\" data-align=\"center\">+5<\/td><td class=\"has-text-align-center\" data-align=\"center\">26<\/td><\/tr>\n<tr><td><strong>Portland Timbers<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">12<\/td><td class=\"has-text-align-center\" data-align=\"center\">16<\/td><td class=\"has-text-align-center\" data-align=\"center\">5<\/td><td class=\"has-text-align-center\" data-align=\"center\">3<\/td><td class=\"has-text-align-center\" data-align=\"center\">8<\/td><td class=\"has-text-align-center\" data-align=\"center\">29<\/td><td class=\"has-text-align-center\" data-align=\"center\">31<\/td><td class=\"has-text-align-center\" data-align=\"center\">-2<\/td><td class=\"has-text-align-center\" data-align=\"center\">18<\/td><\/tr>\n<\/tbody><\/table><\/figure>\n\n<!-- SQ-LINEUPS-START -->\n\n\n<div class=\"sq-teamnews sq-teamnews--theme-mls sq-teamnews--predicted\">\n<style>\n.sq-teamnews,.sq-teamnews *{box-sizing:border-box}\n.sq-teamnews{\n  \/* \u2500\u2500 THEME TOKENS \u2014 only these values change per competition \u2500\u2500 *\/\n  --sq-primary:#1B5E3B;      \/* forest green \u2014 accents, formation chip        *\/\n  --sq-accent:#A8E039;       \/* electric lime \u2014 chevron + confirmed pill      *\/\n  --sq-accent-2:#C8F24C;     \/* brighter lime \u2014 chevron highlight             *\/\n  --sq-gold:#F0B429;         \/* gold \u2014 goalkeeper jersey + note markers       *\/\n  --sq-ink:#16201b;          \/* body text                                     *\/\n  --sq-surface:#ffffff;      \/* card background                               *\/\n  --sq-ground:#F4F6F2;       \/* inset background                              *\/\n  --sq-line:#E4E7E2;         \/* hairline borders                             *\/\n  --sq-muted:#6B7770;        \/* caveat \/ footnote text                       *\/\n  --sq-headA:#0e3f29; --sq-headB:#08251a;  \/* header gradient stops          *\/\n  --sq-turfA:#1c7d4b; --sq-turfB:#125e37;  \/* pitch gradient stops           *\/\n  \/* \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  font-family:inherit;\n  color:var(--sq-ink);background:var(--sq-surface);\n  border:1px solid var(--sq-line);border-radius:16px;overflow:hidden;\n  box-shadow:0 18px 42px -30px rgba(14,36,25,.55);\n  max-width:100%;line-height:1.4;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;\n  margin:24px 0 32px;\n}\n\/* \u2500\u2500 header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__head{position:relative;overflow:hidden;padding:16px 18px 15px;\n  background:linear-gradient(105deg,var(--sq-headA) 0%,var(--sq-headB) 100%);\n  border-left:5px solid var(--sq-accent);color:#f4f8f1;}\n.sq-teamnews__head::before{content:\"\";position:absolute;inset:0;opacity:.06;pointer-events:none;\n  background-size:560px 560px;\n  background-image:url(\"data:image\/svg+xml;utf8,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 3000 3000' preserveAspectRatio='xMidYMid slice'><defs><pattern id='a' width='78' height='175.5' patternTransform='rotate(-45)' patternUnits='userSpaceOnUse'><path fill='%23ffffff' d='m-38.22 157.05-.78-78 78-.78c.45 43.12-34.12 78.33-77.22 78.78'\/><path fill='%23ffffff' d='M77.22 0 78 81.6l-78 .78C-.45 35.67 34.12.45 77.22 0'\/><path fill='%23ffffff' d='m37.78 158.05-.78-78 78-.78c.45 43.12-34.12 78.33-77.22 78.78'\/><\/pattern><\/defs><rect width='100%25' height='100%25' fill='url(%23a)'\/><\/svg>\");}\n.sq-teamnews__brandrow{position:relative;display:flex;align-items:center;gap:9px;margin-bottom:10px;}\n.sq-teamnews__chev{width:19px;height:19px;flex:none;display:block;}\n.sq-teamnews__kicker{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--sq-accent-2);}\n.sq-teamnews__pill{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:10.5px;\n  letter-spacing:.12em;text-transform:uppercase;font-weight:800;padding:5px 11px;border-radius:999px;white-space:nowrap;}\n.sq-teamnews__pill-dot{width:6px;height:6px;border-radius:50%;flex:none;}\n.sq-teamnews--predicted .sq-teamnews__pill{background:rgba(240,180,41,.16);color:var(--sq-gold);border:1px solid rgba(240,180,41,.5);}\n.sq-teamnews--predicted .sq-teamnews__pill-dot{background:var(--sq-gold);}\n.sq-teamnews--confirmed .sq-teamnews__pill{background:var(--sq-accent);color:var(--sq-headB);border:1px solid var(--sq-accent);}\n.sq-teamnews--confirmed .sq-teamnews__pill-dot{background:var(--sq-headB);}\n.sq-teamnews__h2{position:relative;margin:0;font-size:18px;line-height:1.15;font-weight:800;letter-spacing:-.015em;color:#fff;text-wrap:balance;}\n\/* \u2500\u2500 caveat \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__caveat{display:flex;gap:8px;align-items:flex-start;margin:0;padding:11px 18px;\n  background:var(--sq-ground);border-bottom:1px solid var(--sq-line);\n  font-size:12px;line-height:1.45;color:var(--sq-muted);font-style:italic;}\n.sq-teamnews__caveat svg{flex:none;margin-top:1px;opacity:.8;}\n\/* \u2500\u2500 teams grid \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__teams{display:grid;grid-template-columns:1fr;gap:16px;padding:16px;}\n.sq-teamnews__team{min-width:0;}\n.sq-teamnews__teamhead{display:flex;align-items:center;gap:10px;margin-bottom:10px;}\n.sq-teamnews__crest{width:32px;height:32px;flex:none;border-radius:7px;overflow:hidden;object-fit:cover;\n  background:var(--sq-ground);box-shadow:inset 0 0 0 1px var(--sq-line);}\n.sq-teamnews__name{flex:1;margin:0;font-size:16px;font-weight:800;letter-spacing:-.01em;}\n.sq-teamnews__formation{flex:none;font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--sq-primary);\n  background:rgba(27,94,59,.09);border:1px solid rgba(27,94,59,.2);border-radius:7px;padding:4px 9px;}\n\/* \u2500\u2500 the pitch \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__pitch{position:relative;overflow:hidden;border-radius:11px;min-height:330px;\n  background:repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 12.5%,rgba(0,0,0,.05) 12.5% 25%),\n    linear-gradient(180deg,var(--sq-turfA) 0%,var(--sq-turfB) 100%);\n  box-shadow:inset 0 0 0 2px rgba(255,255,255,.14),0 6px 18px -12px rgba(14,36,25,.5);}\n.sq-teamnews__pk{position:absolute;pointer-events:none;}\n.sq-teamnews__pk--half{left:7%;right:7%;top:50%;border-top:2px solid rgba(255,255,255,.18);}\n.sq-teamnews__pk--circle{left:50%;top:50%;width:86px;height:86px;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.18);border-radius:50%;}\n.sq-teamnews__pk--spot{left:50%;top:50%;width:5px;height:5px;transform:translate(-50%,-50%);background:rgba(255,255,255,.3);border-radius:50%;}\n.sq-teamnews__pk--boxb{left:24%;right:24%;bottom:0;height:19%;border:2px solid rgba(255,255,255,.18);border-bottom:none;}\n.sq-teamnews__pk--boxt{left:24%;right:24%;top:0;height:19%;border:2px solid rgba(255,255,255,.18);border-top:none;}\n.sq-teamnews__pk--goalb{left:41%;right:41%;bottom:-2px;height:7px;border:2px solid rgba(255,255,255,.28);border-bottom:none;background:rgba(255,255,255,.06);}\n.sq-teamnews__pk--goalt{left:41%;right:41%;top:-2px;height:7px;border:2px solid rgba(255,255,255,.28);border-top:none;background:rgba(255,255,255,.06);}\n\/* bands: GK at the bottom (goal), FWD at the top (attacking) *\/\n.sq-teamnews__bands{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column-reverse;padding:12px 4px;}\n.sq-teamnews__band{flex:1;display:flex;align-items:center;justify-content:space-evenly;gap:2px;}\n.sq-teamnews__node{display:flex;flex-direction:column;align-items:center;gap:3px;flex:1;min-width:0;max-width:98px;}\n.sq-teamnews__jersey{width:27px;height:24px;flex:none;color:#ffffff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45));}\n.sq-teamnews__band[data-role=\"GK\"] .sq-teamnews__jersey{color:var(--sq-gold);}\n.sq-teamnews__pname{font-size:10.5px;font-weight:700;line-height:1.12;color:#fff;text-align:center;\n  letter-spacing:-.01em;max-width:100%;overflow-wrap:break-word;\n  text-shadow:0 1px 3px rgba(0,0,0,.75),0 0 2px rgba(0,0,0,.55);}\n.sq-teamnews__mark{color:var(--sq-gold);font-weight:800;}\nsup.sq-teamnews__mark{font-size:.72em;margin-left:1px;text-shadow:none;}\n\/* \u2500\u2500 footnotes (auto-hides when there are none) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__notes{list-style:none;margin:0;padding:14px 16px 2px;display:flex;flex-direction:column;gap:5px;}\n.sq-teamnews__notes:empty{display:none;}\n.sq-teamnews__notes li{font-size:11.5px;line-height:1.4;color:var(--sq-muted);}\n.sq-teamnews__notes strong{color:var(--sq-ink);font-weight:700;}\n.sq-teamnews__notes .sq-teamnews__mark{text-shadow:none;}\n\/* \u2500\u2500 footer \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.sq-teamnews__foot{display:flex;align-items:center;gap:7px;margin-top:14px;padding:10px 16px;\n  border-top:1px solid var(--sq-line);background:var(--sq-ground);\n  font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--sq-muted);}\n\/* \u2500\u2500 narrow phones: stop the header pill + 4-across bands clipping \u2500\u2500 *\/\n@media(max-width:559px){\n  .sq-teamnews__head{padding:14px 14px 13px;}\n  .sq-teamnews__kicker{font-size:10px;letter-spacing:.12em;}\n  .sq-teamnews__pill{font-size:9.5px;padding:4px 9px;letter-spacing:.08em;}\n  .sq-teamnews__h2{font-size:16.5px;}\n  .sq-teamnews__teams{padding:12px;gap:12px;}\n  .sq-teamnews__bands{padding:10px 2px;}\n  .sq-teamnews__band{gap:1px;}\n  .sq-teamnews__node{max-width:none;}\n  .sq-teamnews__pname{font-size:9px;line-height:1.05;}\n  .sq-teamnews__jersey{width:23px;height:20px;}\n}\n\/* \u2500\u2500 desktop: pitches side-by-side \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n@media(min-width:560px){\n  .sq-teamnews__teams{grid-template-columns:1fr 1fr;}\n  .sq-teamnews__head{padding:18px 20px 17px;}\n  .sq-teamnews__h2{font-size:21px;}\n  .sq-teamnews__name{font-size:17px;}\n  .sq-teamnews__pitch{min-height:372px;}\n  .sq-teamnews__pname{font-size:11px;}\n}\n<\/style>\n\n  <!-- \u2500\u2500 HEADER \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <div class=\"sq-teamnews__head\">\n    <div class=\"sq-teamnews__brandrow\">\n      <svg class=\"sq-teamnews__chev\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n        <path d=\"M4 5l7 7-7 7\" stroke=\"var(--sq-accent-2)\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n        <path d=\"M13 5l7 7-7 7\" stroke=\"var(--sq-accent)\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n      <\/svg>\n      <span class=\"sq-teamnews__kicker\">Team News<\/span>\n      <span class=\"sq-teamnews__pill\"><span class=\"sq-teamnews__pill-dot\"><\/span>Predicted<\/span>\n    <\/div>\n    <h2 class=\"sq-teamnews__h2\">Portland Timbers vs Real Salt Lake Predicted Lineups<\/h2>\n  <\/div>\n\n  <!-- \u2500\u2500 CAVEAT (predicted only) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  \n  <p class=\"sq-teamnews__caveat\">\n    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n      <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"2\"\/>\n      <path d=\"M12 11.2v5M12 7.4v.4\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n    <\/svg>\n    <span>Based on the XI each side started in their last match.<\/span>\n  <\/p>\n  \n\n  <!-- \u2500\u2500 TWO TEAMS, each on a pitch \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <div class=\"sq-teamnews__teams\">\n    \n    <section class=\"sq-teamnews__team\">\n      <div class=\"sq-teamnews__teamhead\">\n        \n        <h3 class=\"sq-teamnews__name\">Portland Timbers<\/h3>\n        <span class=\"sq-teamnews__formation\">4-1-4-1<\/span>\n      <\/div>\n      <div class=\"sq-teamnews__pitch\">\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--boxt\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--goalt\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--half\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--circle\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--spot\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--boxb\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--goalb\"><\/div>\n        <!-- bands render GK\u2192FWD; column-reverse puts GK at the goal end -->\n        <div class=\"sq-teamnews__bands\">\n          \n          <div class=\"sq-teamnews__band\" data-role=\"GK\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Pantemis<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"DEF\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Fory<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">K. Miller<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">F. Surman<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">B. Bye<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"DM\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Caicedo<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"MID\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">Antony<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">David da Costa<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">C. Bassett<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">A. Lassiter<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"FWD\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">K. Kelsy<\/span>\n            <\/div>\n            \n          <\/div>\n          \n        <\/div>\n      <\/div>\n    <\/section>\n    \n    <section class=\"sq-teamnews__team\">\n      <div class=\"sq-teamnews__teamhead\">\n        \n        <h3 class=\"sq-teamnews__name\">Real Salt Lake<\/h3>\n        <span class=\"sq-teamnews__formation\">3-4-2-1<\/span>\n      <\/div>\n      <div class=\"sq-teamnews__pitch\">\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--boxt\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--goalt\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--half\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--circle\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--spot\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--boxb\"><\/div>\n        <div class=\"sq-teamnews__pk sq-teamnews__pk--goalb\"><\/div>\n        <!-- bands render GK\u2192FWD; column-reverse puts GK at the goal end -->\n        <div class=\"sq-teamnews__bands\">\n          \n          <div class=\"sq-teamnews__band\" data-role=\"GK\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">Rafael Cabral<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"DEF\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">L. Engel<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">P. Quinton<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">D. Yedlin<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"MID\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">J. Sanabria<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">N. Caliskan<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">S. Spierings<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">Z. Gozo<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"AM\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">M. Guilavogui<\/span>\n            <\/div>\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">D. Luna<\/span>\n            <\/div>\n            \n          <\/div>\n          \n          <div class=\"sq-teamnews__band\" data-role=\"FWD\">\n            \n            <div class=\"sq-teamnews__node\">\n              <svg class=\"sq-teamnews__jersey\" viewBox=\"0 0 36 32\" aria-hidden=\"true\"><path fill=\"currentColor\" stroke=\"rgba(0,0,0,.22)\" stroke-width=\"1\" d=\"M13 3 4 7 1 14 6 17 10 14 10 30 26 30 26 14 30 17 35 14 32 7 23 3C22 7 14 7 13 3Z\"\/><\/svg>\n              <span class=\"sq-teamnews__pname\">Sergi Solans<\/span>\n            <\/div>\n            \n          <\/div>\n          \n        <\/div>\n      <\/div>\n    <\/section>\n    \n  <\/div>\n\n  <!-- \u2500\u2500 FOOTNOTES: one line per player with a note (any team) \u2500\u2500 -->\n  <ul class=\"sq-teamnews__notes\">\n    \n  <\/ul>\n\n  <div class=\"sq-teamnews__foot\">\n    <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n      <path d=\"M5 6l6 6-6 6\" stroke=\"var(--sq-primary)\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n      <path d=\"M13 6l6 6-6 6\" stroke=\"var(--sq-primary)\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n    <\/svg>\n    <span>Squawka \u00b7 Team News<\/span>\n  <\/div>\n\n<\/div>\n\n<!-- SQ-LINEUPS-END -->\n\n<h2>Potential Match-Winners<\/h2>\n\n<ul>\n<li><strong>Kevin Kelsy (Portland Timbers):<\/strong> the Timbers&rsquo; spearhead has eight goals this season from 33 shots, 14 of them on target &#8212; the focal point of everything Portland build at home.<\/li>\n<li><strong>David da Costa (Portland Timbers):<\/strong> Portland&rsquo;s chief creator, with five assists and 22 chances created, pulling the strings from midfield across more than 1,000 minutes.<\/li>\n<li><strong>Zavier Gozo (Real Salt Lake):<\/strong> RSL&rsquo;s most productive attacker, contributing six goals and four assists while racking up 52 shots, a genuine road threat.<\/li>\n<li><strong>Diego Luna (Real Salt Lake):<\/strong> four goals and a team-high 30 key passes in just 686 minutes, the visitors&rsquo; sharpest source of chances.<\/li>\n<\/ul>\n\n<h2>Recent Form<\/h2>\n\n<h3>Portland Timbers: D L L W D<\/h3>\n\n<ul>\n<li>Jul 23, 2026: Portland Timbers 2-2 FC Dallas (D, home)<\/li>\n<li>Jul 17, 2026: Seattle Sounders 1-5 Portland Timbers (W, away)<\/li>\n<li>May 24, 2026: Portland Timbers 1-3 San Jose Earthquakes (L, home)<\/li>\n<li>May 17, 2026: Inter Miami 2-0 Portland Timbers (L, away)<\/li>\n<li>May 14, 2026: CF Montr\u00e9al 2-2 Portland Timbers (D, away)<\/li>\n<\/ul>\n\n<p>The Timbers have scored in each of their last three, but the back line is the worry: they have conceded in every one of their last five, the last clean sheet a 6-0 rout of Sporting KC on May 10. The 5-1 win at Seattle showed the ceiling; the 2-2 with FC Dallas showed the leak.<\/p>\n\n<h3>Real Salt Lake: L W W D L<\/h3>\n\n<ul>\n<li>Jul 23, 2026: LAFC 3-1 Real Salt Lake (L, away)<\/li>\n<li>May 23, 2026: Minnesota United 1-1 Real Salt Lake (D, away)<\/li>\n<li>May 17, 2026: Real Salt Lake 2-1 Colorado Rapids (W, home)<\/li>\n<li>May 14, 2026: Real Salt Lake 3-0 Houston Dynamo (W, home)<\/li>\n<li>May 10, 2026: FC Dallas 3-1 Real Salt Lake (L, away)<\/li>\n<\/ul>\n\n<p>RSL remain a threat going forward, having scored in each of their last seven, but the 3-1 defeat at LAFC snapped a settled run and they have now conceded in each of their last three. The road record is the concern: their wins have come at home, and this is another away test.<\/p>\n\n<!-- SQ-SIGNAL reserved (no MLS Signal model yet) -->\n\n<h2>Portland Timbers vs Real Salt Lake Prediction<\/h2>\n\n<p>This has the makings of an open, high-scoring night. Portland are the home favorites and the sharper attacking side on current form, while Real Salt Lake will carry a threat but have to win on the road off a midweek defeat. We land on a Portland win with both teams scoring &#8212; the value pick is <a rel=\"nofollow sponsored noopener\" href=\"https:\/\/www.squawka.com\/en\/go\/bet365?q=us-sg1-con-wof-s-spo\" target=\"_blank\"><strong>Portland Timbers to win at +130 with bet365<\/strong><\/a>, with Kevin Kelsy to score anytime the natural add. See our full <a href=\"https:\/\/www.squawka.com\/us\/bet\/betting-sites\/bet365\/\">bet365 review<\/a> for the latest. Kick-off is 10:30 PM ET at Providence Park.<\/p>\n\n<p><small>Odds correct at the time of writing. Please gamble responsibly.<\/small><\/p>\n\n<p><em>Must be 21+. GAMBLING PROBLEM? Call 1-800-GAMBLER<\/em><\/p>","protected":false},"excerpt":{"rendered":"<p>Portland Timbers host Real Salt Lake at Providence Park on Saturday, July 25 at 10:30 PM ET \/ 9:30 PM CT \/ 7:30 PM PT, two Western Conference sides pulling in opposite directions. Our Portland Timbers vs Real Salt Lake prediction leans toward the home side in an MLS Western Conference clash that should have&#8230;<\/p>\n","protected":false},"author":394,"featured_media":26604,"parent":0,"menu_order":0,"template":"","meta":{"_acf_changed":false,"_yoast_wpseo_focuskw":"portland timbers vs real salt lake prediction","_yoast_wpseo_title":"Portland Timbers vs Real Salt Lake: MLS Predictions & Odds","_yoast_wpseo_metadesc":"Our Portland Timbers vs Real Salt Lake prediction backs the home favorites, over 2.5 goals and both teams to score, with Kevin Kelsy to net at Providence Park.","footnotes":""},"tags":[306],"news-category":[335],"class_list":["post-26635","news","type-news","status-publish","has-post-thumbnail","hentry","tag-mls","news-category-mls"],"acf":{"external_featured_image_url":"","hide_featured_image_pattern":true},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.0 (Yoast SEO v28.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Portland Timbers vs Real Salt Lake: MLS Predictions &amp; Odds<\/title>\n<meta name=\"description\" content=\"Our Portland Timbers vs Real Salt Lake prediction backs the home favorites, over 2.5 goals and both teams to score, with Kevin Kelsy to net at Providence Park.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Portland Timbers vs Real Salt Lake: Predictions, Picks, Odds &amp; Lineups\" \/>\n<meta property=\"og:description\" content=\"Our Portland Timbers vs Real Salt Lake prediction backs the home favorites, over 2.5 goals and both teams to score, with Kevin Kelsy to net at Providence Park.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/\" \/>\n<meta property=\"og:site_name\" content=\"Squawka | US\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SquawkaFootballNews\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-23T14:23:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/07\/23074300\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1167\" \/>\n\t<meta property=\"og:image:height\" content=\"590\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@Squawka\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\\\/\",\"url\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\\\/\",\"name\":\"Portland Timbers vs Real Salt Lake: MLS Predictions & Odds\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/07\\\/23074300\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg\",\"datePublished\":\"2026-07-23T14:21:16+00:00\",\"dateModified\":\"2026-07-23T14:23:22+00:00\",\"description\":\"Our Portland Timbers vs Real Salt Lake prediction backs the home favorites, over 2.5 goals and both teams to score, with Kevin Kelsy to net at Providence Park.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\\\/#primaryimage\",\"url\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/07\\\/23074300\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg\",\"contentUrl\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/07\\\/23074300\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg\",\"width\":1167,\"height\":590,\"caption\":\"Portland Timbers vs Real Salt Lake prediction, predicted lineups and odds preview banner for the MLS clash at Providence Park.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/mls\\\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"News\",\"item\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/news\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Portland Timbers vs Real Salt Lake: Predictions, Picks, Odds &#038; Lineups\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#website\",\"url\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/\",\"name\":\"Squawka US\",\"description\":\"Soccer News and Predictions | Stats, Betting\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#organization\",\"name\":\"Squawka US\",\"url\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/04\\\/23072352\\\/Squawka-Logo.jpg\",\"contentUrl\":\"https:\\\/\\\/media.squawka.com\\\/images\\\/sites\\\/13\\\/2026\\\/04\\\/23072352\\\/Squawka-Logo.jpg\",\"width\":1000,\"height\":1000,\"caption\":\"Squawka US\"},\"image\":{\"@id\":\"https:\\\/\\\/www.squawka.com\\\/us\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/SquawkaFootballNews\\\/\",\"https:\\\/\\\/x.com\\\/Squawka\",\"https:\\\/\\\/www.instagram.com\\\/squawkafootball\\\/\"],\"description\":\"Squawka is a football editorial site covering the Premier League, Champions League, MLS, Liga MX, FIFA World Cup 2026 and the wider international game. We publish match previews, tactical analysis, player and team stats, outright odds, betting tips, streaming guides and long-form features for a committed football audience. Founded in the UK and part of OneTwenty Group, Squawka now runs localised editions for the UK (squawka.com\\\/en\\\/), United States (squawka.com\\\/us\\\/), Mexican-Spanish (squawka.com\\\/us-es\\\/), Ireland, Netherlands, Nigeria, Kenya, Uganda, South Africa and Ghana. Each edition is editorially tailored to its market, with locale-specific competition focus, operator compliance and commercial partnerships. Traffic skews toward high-intent football readers \u2014 supporters researching fixtures, form, odds and where to watch \u2014 making Squawka a strong fit for sportsbook, prediction-market, DFS, streaming and sports-merchandise brands across the UK, Europe and North America.\",\"foundingDate\":\"2012-06-11\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Portland Timbers vs Real Salt Lake: MLS Predictions & Odds","description":"Our Portland Timbers vs Real Salt Lake prediction backs the home favorites, over 2.5 goals and both teams to score, with Kevin Kelsy to net at Providence Park.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/","og_locale":"en_US","og_type":"article","og_title":"Portland Timbers vs Real Salt Lake: Predictions, Picks, Odds & Lineups","og_description":"Our Portland Timbers vs Real Salt Lake prediction backs the home favorites, over 2.5 goals and both teams to score, with Kevin Kelsy to net at Providence Park.","og_url":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/","og_site_name":"Squawka | US","article_publisher":"https:\/\/www.facebook.com\/SquawkaFootballNews\/","article_modified_time":"2026-07-23T14:23:22+00:00","og_image":[{"width":1167,"height":590,"url":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/07\/23074300\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@Squawka","twitter_misc":{"Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/","url":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/","name":"Portland Timbers vs Real Salt Lake: MLS Predictions & Odds","isPartOf":{"@id":"https:\/\/www.squawka.com\/us\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/#primaryimage"},"image":{"@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/#primaryimage"},"thumbnailUrl":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/07\/23074300\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg","datePublished":"2026-07-23T14:21:16+00:00","dateModified":"2026-07-23T14:23:22+00:00","description":"Our Portland Timbers vs Real Salt Lake prediction backs the home favorites, over 2.5 goals and both teams to score, with Kevin Kelsy to net at Providence Park.","breadcrumb":{"@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/#primaryimage","url":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/07\/23074300\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg","contentUrl":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/07\/23074300\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls-banner.jpg","width":1167,"height":590,"caption":"Portland Timbers vs Real Salt Lake prediction, predicted lineups and odds preview banner for the MLS clash at Providence Park."},{"@type":"BreadcrumbList","@id":"https:\/\/www.squawka.com\/us\/news\/mls\/match-preview-portland-timbers-vs-real-salt-lake-07-25-26-mls\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.squawka.com\/us\/"},{"@type":"ListItem","position":2,"name":"News","item":"https:\/\/www.squawka.com\/us\/news\/"},{"@type":"ListItem","position":3,"name":"Portland Timbers vs Real Salt Lake: Predictions, Picks, Odds &#038; Lineups"}]},{"@type":"WebSite","@id":"https:\/\/www.squawka.com\/us\/#website","url":"https:\/\/www.squawka.com\/us\/","name":"Squawka US","description":"Soccer News and Predictions | Stats, Betting","publisher":{"@id":"https:\/\/www.squawka.com\/us\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.squawka.com\/us\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.squawka.com\/us\/#organization","name":"Squawka US","url":"https:\/\/www.squawka.com\/us\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.squawka.com\/us\/#\/schema\/logo\/image\/","url":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/04\/23072352\/Squawka-Logo.jpg","contentUrl":"https:\/\/media.squawka.com\/images\/sites\/13\/2026\/04\/23072352\/Squawka-Logo.jpg","width":1000,"height":1000,"caption":"Squawka US"},"image":{"@id":"https:\/\/www.squawka.com\/us\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SquawkaFootballNews\/","https:\/\/x.com\/Squawka","https:\/\/www.instagram.com\/squawkafootball\/"],"description":"Squawka is a football editorial site covering the Premier League, Champions League, MLS, Liga MX, FIFA World Cup 2026 and the wider international game. We publish match previews, tactical analysis, player and team stats, outright odds, betting tips, streaming guides and long-form features for a committed football audience. Founded in the UK and part of OneTwenty Group, Squawka now runs localised editions for the UK (squawka.com\/en\/), United States (squawka.com\/us\/), Mexican-Spanish (squawka.com\/us-es\/), Ireland, Netherlands, Nigeria, Kenya, Uganda, South Africa and Ghana. Each edition is editorially tailored to its market, with locale-specific competition focus, operator compliance and commercial partnerships. Traffic skews toward high-intent football readers \u2014 supporters researching fixtures, form, odds and where to watch \u2014 making Squawka a strong fit for sportsbook, prediction-market, DFS, streaming and sports-merchandise brands across the UK, Europe and North America.","foundingDate":"2012-06-11"}]}},"yoast_title":"Portland Timbers vs Real Salt Lake: MLS Predictions & Odds","yoast_description":"Our Portland Timbers vs Real Salt Lake prediction backs the home favorites, over 2.5 goals and both teams to score, with Kevin Kelsy to net at Providence Park.","yoast_keyword":"portland timbers vs real salt lake prediction","_links":{"self":[{"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news\/26635","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news"}],"about":[{"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/types\/news"}],"author":[{"embeddable":true,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/users\/394"}],"version-history":[{"count":2,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news\/26635\/revisions"}],"predecessor-version":[{"id":26643,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news\/26635\/revisions\/26643"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/media\/26604"}],"wp:attachment":[{"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/media?parent=26635"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/tags?post=26635"},{"taxonomy":"news-category","embeddable":true,"href":"https:\/\/www.squawka.com\/us\/wp-json\/wp\/v2\/news-category?post=26635"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}