Bookmaker Odds Comparison

Bookmaker Odds Comparison

The bookmakerOddsComparison widget renders a per-event 1x2 odds-comparison table across multiple bookmaker brands, served from the per-event snapshot pre-aggregated by the odds-pipeline-worker. Each row is a clickable affiliate link (/go/<cloakedLink>) wrapping logo + brand name + the 1 / X / 2 price cells.

Key features:

  • Cross-provider odds: one row per configured brand, side-by-side prices for the 1, X, and 2 outcomes. Inactive brands are hidden entirely (no greyed-out rows).
  • Affiliate-funnel CTA: each row is a single semantic <a> to the brand’s cloaked tracking link. Optional widget-level CTA button via ctakey / ctatext attributes.
  • Editorial copy via configuration JSON: title, subtitle, and the event identity live in the configuration attribute; CTA + layout (fullwidth) live on top-level attributes the same way as ctabuttonlogo7.
  • Tracking-link strategy (tlTarget): switch between the default Vulcan cloaked links and the RBO legacy-id links without changing anything else.
  • Two markets (market): 1x2 (1 / X / 2 columns) or a tournament outright (one column per outcome – e.g. World Cup Winner) selected via the market field in the configuration JSON. See the Outright section at the bottom of this page.

The configuration attribute is a JSON object containing the event id, market, brands array, and optional title/subtitle. CTA + fullwidth are top-level attributes (NOT inside the JSON), matching the convention used by other CTA-bearing widgets.

The tlTarget top-level attribute controls how every affiliate link in the widget (brand logo, each odds cell, and the BET NOW button) is built:

tlTarget Link form Notes
vulcan (default) /go/<cloakedLink>?country=…&language=…&wid=… Standard Vulcan cloaked-link strategy. Used when tlTarget is omitted.
rbo /go/<legacyId>.html RBO legacy strategy. Uses each brand’s legacyId; no query params are appended.
  • The value is case-insensitive (RBO, Rbo, rbo all work) and any unrecognized value falls back to vulcan.
  • For rbo, each brand’s legacyId is read from the brands[] entry in the configuration JSON (it falls back to the brand’s Sanity reference legacyId when omitted). If no legacyId can be resolved for a brand, that link safely falls back to the Vulcan form.
  • legacyId is ignored when tlTarget is vulcan, so it is harmless to always include it.

Full attributes (all options)

Expand me...

Error: no snapshot for event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1snapshotKey=event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1

Minimal attributes (defaults applied)

Expand me...

Error: no snapshot for event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1snapshotKey=event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1

With CTA translation key (resolved server-side via i18n)

Expand me...

Error: no snapshot for event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1snapshotKey=event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1

With CTA literal text (no translation lookup)

Expand me...

Error: no snapshot for event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1snapshotKey=event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1

Fullwidth layout

Expand me...

Error: no snapshot for event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1snapshotKey=event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1

Set tlTarget="rbo" and provide a legacyId for each brand. Every affiliate link in the widget (brand logo, odds cells, and the BET NOW button) is then built as /go/<legacyId>.html instead of the Vulcan /go/<cloakedLink> form.

Expand me...

Error: no snapshot for event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1snapshotKey=event:019e6dac-0a37-762f-8f21-13a8b6b28939:1x2:v1


Outright market (market: "outright")

The same bookmakerOddsComparison widget renders a tournament outright (e.g. World Cup Winner) when market is set to "outright" in the configuration JSON. Instead of fixed 1 / X / 2 columns, each brand row shows that bookmaker’s price for every outcome (one cell per selection – the competing teams or nations), served from the outright snapshot pre-aggregated by the odds-pipeline-worker.

Everything else is identical to the 1x2 market: brands, title / subtitle, ctakey / ctatext, fullwidth, tlTarget, and per-brand legacyId all behave exactly the same. Only two fields differ from the examples above – market is "outright" and internalEventId points at an outright event.

Note: Delasport does not offer outright markets, so these examples use Altenar- and Bahigo-backed brands. A configured brand with no outright price for the event is simply hidden, the same inactive-row behaviour as the 1x2 market.

Outright – full attributes (all options)

Expand me...

World Cup 2026 WinnerOutright odds across bookmakers
Mon, Jun 1513:50
Team
France5.005.00
England7.007.00
Spain7.007.00
Argentina9.009.00
Brazil11.0011.00
Portugal11.0011.00
Germany15.0015.00
Netherlands26.0026.00
Norway23.0023.00
Colombia26.0026.00
Morocco34.0034.00
USA34.0034.00
Belgium41.0041.00
Mexico67.0067.00
Japan51.0051.00
Sweden67.0067.00
Uruguay67.0067.00
Australia251.00251.00
Croatia126.00126.00
Switzerland81.0081.00
Canada101.00101.00
Austria101.00101.00
Senegal101.00101.00
Ivory Coast251.00251.00
Ecuador151.00151.00
Turkey201.00201.00
Scotland151.00151.00
Egypt251.00251.00
Bosnia & Herzegovina351.00351.00
South Korea351.00351.00
DR Congo351.00351.00
Ghana351.00351.00
Paraguay351.00351.00
Algeria501.00501.00
Czechia1001.001001.00
Iran1001.001001.00
Tunisia3501.003501.00
Cape Verde751.00751.00
Qatar751.00751.00
Saudi Arabia1001.001001.00
New Zealand2001.002001.00
Panama1501.001501.00
Uzbekistan3001.003001.00
Jordan1501.001501.00
South Africa2001.002001.00
Iraq
Curacao
Haiti
Bet nowBet now

Outright – minimal attributes (defaults applied)

Expand me...

World Cup 2026 - Winner
Mon, Jun 1513:50
Team
France5.00
England7.00
Spain7.00
Argentina9.00
Brazil11.00
Portugal11.00
Germany15.00
Netherlands26.00
Norway23.00
Colombia26.00
Morocco34.00
USA34.00
Belgium41.00
Mexico67.00
Japan51.00
Sweden67.00
Uruguay67.00
Australia251.00
Croatia126.00
Switzerland81.00
Canada101.00
Austria101.00
Senegal101.00
Ivory Coast251.00
Ecuador151.00
Turkey201.00
Scotland151.00
Egypt251.00
Bosnia & Herzegovina351.00
South Korea351.00
DR Congo351.00
Ghana351.00
Paraguay351.00
Algeria501.00
Czechia1001.00
Iran1001.00
Tunisia3501.00
Cape Verde751.00
Qatar751.00
Saudi Arabia1001.00
New Zealand2001.00
Panama1501.00
Uzbekistan3001.00
Jordan1501.00
South Africa2001.00
Iraq
Curacao
Haiti
Bet Now

Set tlTarget="rbo" and provide a legacyId for each brand. Every affiliate link in the outright table – the brand-logo column headers, every odds cell, and the footer BET NOW buttons – is then built as /go/<legacyId>.html instead of the Vulcan /go/<cloakedLink> form.

Expand me...

World Cup 2026 WinnerRBO tracking strategy
Mon, Jun 1513:50
Team
France5.005.00
England7.007.00
Spain7.007.00
Argentina9.009.00
Brazil11.0011.00
Portugal11.0011.00
Germany15.0015.00
Netherlands26.0026.00
Norway23.0023.00
Colombia26.0026.00
Morocco34.0034.00
USA34.0034.00
Belgium41.0041.00
Mexico67.0067.00
Japan51.0051.00
Sweden67.0067.00
Uruguay67.0067.00
Australia251.00251.00
Croatia126.00126.00
Switzerland81.0081.00
Canada101.00101.00
Austria101.00101.00
Senegal101.00101.00
Ivory Coast251.00251.00
Ecuador151.00151.00
Turkey201.00201.00
Scotland151.00151.00
Egypt251.00251.00
Bosnia & Herzegovina351.00351.00
South Korea351.00351.00
DR Congo351.00351.00
Ghana351.00351.00
Paraguay351.00351.00
Algeria501.00501.00
Czechia1001.001001.00
Iran1001.001001.00
Tunisia3501.003501.00
Cape Verde751.00751.00
Qatar751.00751.00
Saudi Arabia1001.001001.00
New Zealand2001.002001.00
Panama1501.001501.00
Uzbekistan3001.003001.00
Jordan1501.001501.00
South Africa2001.002001.00
Iraq
Curacao
Haiti
Bet nowBet now