M&A bolt-on · Starbucks → target #6 of 8
Oatly
Premium, mission-driven plant-based dairy alternative brand with a focus on sustainability and lifestyle integration.
Founded 1994 · Parent: Oatly Group AB · Competes with Califia Farms, Silk, Alpro, Minor Figures · Partnerships: Nespresso, AVAVAV, EF Pro Bikers
Corporate details are Qloo entity data.
Why this verdict
F 52.2 < 62.
Scores, flags and verdicts are computed in code. The agents can only argue with the ledger; they never set the score.
Six audience metrics
Bar = this target; tick = shortlist average.
How F is built
Points each metric adds (weights for M&A bolt-on, renormalised over what Qloo could measure).
| Metric | Weight | Points |
|---|---|---|
| Two-way audience affinity | 0.30 | 20.4 |
| Taste-profile overlap | 0.20 | 3.6 |
| Cross-domain agreement | 0.15 | 12.0 |
| Demographic alignment | 0.15 | 9.0 |
| Geographic footprint | 0.10 | 2.1 |
| Momentum | 0.10 | 5.1 |
| F | 52.2 |
Qloo explainability: the buyer-side signals driving the forward affinity are Starbucks (1.00).
Shared catalogue categories (Qloo compare): Food & Beverage.
Where the audiences meet, across culture
The buyer audience’s top titles in each domain, ranked by how strongly Oatly’s audience embraces them.
Taste profile overlap
16 of 84 top taste tags shared.
Manga, japanese drama, based on manga, live action adaptation, J-pop
Avocado Toast, sweden, berlin germany, germany, Coffee shop
Audience shape
Relative over-index (+) or under-index (−) of each aggregate audience, from Qloo. Not individual data.
Momentum
z = 0.05 relative to the screened cohort (2025-10-01).
Footprint overlap for distribution
New York, Boston, San Francisco, Portland, San Jose, Chicago, Seattle, Miami
none
Bull vs bear
8 of 10 claims survived the judge; 2 rejected for citing numbers not in the ledger or misreading them.Bull: for the deal
The audience over-indexes on Oatly and Starbucks jointly: two-way audience affinity of 0.68 sits at a strength versus the shortlist average of 0.67, with the reverse affinity from Starbucks matching exactly.
t3-m1.value = 0.6805t3-m1.shortlistAverages.value = 0.6656Taste-profile overlap is a strength: 16 shared tags against a shortlist average of 13.5, with 8 shared tags including Cafe, indie and rock, in the aggregate audience profile.
t3-m2.sharedCount = 16t3-m2.value = 0.1795Demographic alignment is a strength: the cosine of buyer and target audience profiles is 0.20 against a shortlist average of 0.10, with the female skew shared at +0.32 buyer and +0.35 target in the aggregate.
t3-m4.cosine = 0.2033t3-m4.shortlistAverages.cosine = 0.09894t3-m4.target.female = 0.35Oatly's entity profile links it to Starbucks as its top driver with a score of 1, and the brand carries a popularity of 0.94 in the aggregate taste graph, supporting an existing adjacency that a bolt-on could build on.
t3-profile.drivers[0].score = 1t3-profile.popularity = 0.9402Cross-domain agreement in the TV and Film domains is a strength, with the TV domain score of 0.87 above the 0.87 shortlist average, which supports a shared lifestyle positioning across media, though the overall agreement reading is a weakness and is not cited here.
t3-m3.domains[1].score = 0.8721t3-m3.domains[0].score = 0.7675Rejected by the judge: cites m3 Cross-domain agreement "domains[1].score" = 0.8721 as a strength, but it is below the shortlist average (0.8738)
Bear: against, or diligence first
The composite score sits below the shortlist average, so on the code's aggregate measure this bolt-on does not screen as stronger than peers.
t3-score.F = 52.21t3-score.F = 52.21Geographic footprint is a weakness: the audience correlation across metros is negative at -0.58 against a shortlist average of 0.09, and the code counts 10 white-space metros where Starbucks' audience is strong but Oatly's is comparatively thin.
t3-m5.correlation = -0.5809t3-m5.whiteSpaceCount = 10Cross-domain agreement is weak on TV and Film: the TV domain score of 0.872 and Film score of 0.815 both fall into the weakness reading relative to the shortlist, suggesting the shared audience is narrower outside music and podcasts.
t3-m3.domains[1].score = 0.8721t3-m3.domains[2].score = 0.8153Taste-profile overlap is modest at 0.179 with 16 shared tags, yet the buyer-side demographic gap is large at 0.29 in the 30 to 34 bucket against the target's -0.78, so the audiences diverge in age mix and diligence should test whether that gap holds before any pursuit.
t3-m4.biggestGap.buyer = 0.29t3-m4.biggestGap.target = -0.78Momentum is a weakness: the normalised momentum z-score of 0.050 trails the shortlist average of 0.249, so the aggregate audience signal is not visibly accelerating.
t3-m6.z = 0.04968t3-m6.z = 0.2486Rejected by the judge: cited 0.2486 for m6 Momentum "z", but the ledger says 0.0497
Provenance: 26 Qloo calls behind this target
Requests as sent (the API key travels in a header and is never logged). Responses are cached privately on the server.
| Purpose | Endpoint | Status | Result | Source |
|---|---|---|---|---|
| /v2/insights | ok | 14 of 14 candidates scored | live 94 ms | |
| /v2/insights | ok | 14 profile(s) | cache | |
| /v2/insights | ok | demographics for 9 of 9 entities | live 56 ms | |
| /v2/insights | ok | 25 recommended podcast(s) | live 412 ms | |
| /v2/insights | ok | 25 recommended tv_show(s) | live 530 ms | |
| /v2/insights | ok | 50 taste tag(s) | live 1157 ms | |
| /v2/insights | ok | 25 recommended movie(s) | live 1538 ms | |
| /v2/insights | ok | 25 recommended artist(s) | live 3427 ms | |
| /v2/insights | ok | 10900 heatmap cell(s) in United States | live 3659 ms | |
| /v2/trending | ok | 47 trend point(s) | cache | |
| /v2/trending | ok | 47 trend point(s) | cache | |
| /v2/trending | ok | 47 trend point(s) | cache | |
| /v2/trending | ok | 47 trend point(s) | live 322 ms | |
| /v2/trending | ok | 47 trend point(s) | live 321 ms | |
| /v2/trending | ok | 47 trend point(s) | live 322 ms | |
| /v2/trending | ok | 47 trend point(s) | live 327 ms | |
| /v2/trending | ok | 47 trend point(s) | live 601 ms | |
| /v2/trending | ok | 47 trend point(s) | live 614 ms | |
| /v2/insights | ok | 50 taste tag(s) | cache | |
| /v2/insights | ok | 5302 heatmap cell(s) in United States | cache | |
| /v2/insights | ok | 25 of 25 candidates scored | live 982 ms | |
| /v2/insights | ok | 1 of 1 candidates scored | live 1186 ms | |
| /v2/insights | ok | 25 of 25 candidates scored | live 1469 ms | |
| /v2/insights | ok | 25 of 25 candidates scored | live 1950 ms | |
| /v2/insights | ok | 25 of 25 candidates scored | live 2259 ms | |
| /v2/analysis/compare | ok | 1 shared catalogue tag(s) | live 2424 ms |
Evidence rows (what bull, bear and the judge see)
[
{
"id": "t3-flags",
"label": "Red flags (code rules)",
"data": {
"flags": []
},
"shortlistAverages": {}
},
{
"id": "t3-m1",
"label": "m1 Two-way audience affinity",
"data": {
"a": 0.6805259013936693,
"b": 0.6805259013936693,
"ratio": 1,
"value": 0.6805259013936693,
"reverse": [
{
"id": "B13C02E3-BA3C-4B39-85B4-ACF12FEBC892",
"name": "Starbucks",
"affinity": 0.6805259013936693
}
],
"coverage": 1
},
"shortlistAverages": {
"a": 0.6656015264478415,
"b": 0.6656015264478415,
"ratio": 1,
"value": 0.6656015264478415
}
},
{
"id": "t3-m2",
"label": "m2 Taste-profile overlap",
"data": {
"value": 0.17946345975948202,
"shared": [
{
"id": "urn:tag:genre:place:restaurant:cafe",
"name": "Cafe",
"subtype": "urn:tag:genre:place"
},
{
"id": "urn:tag:keyword:media:based_on_novel",
"name": "based on novel",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:keyword:media:friendship",
"name": "friendship",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:keyword:media:female_protagonist",
"name": "female protagonist",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:genre:place:restaurant:french",
"name": "French",
"subtype": "urn:tag:genre:place"
},
{
"id": "urn:tag:keyword:media:friend",
"name": "friend",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:genre:music:rock",
"name": "rock",
"subtype": "urn:tag:genre:music"
},
{
"id": "urn:tag:genre:music:indie",
"name": "indie",
"subtype": "urn:tag:genre:music"
}
],
"coverage": 1,
"buyerOnly": [
{
"id": "urn:tag:genre:media:manga",
"name": "Manga",
"subtype": "urn:tag:genre:media"
},
{
"id": "urn:tag:keyword:media:japanese_drama",
"name": "japanese drama",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:keyword:media:based_on_manga",
"name": "based on manga",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:keyword:media:live_action_adaptation",
"name": "live action adaptation",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:genre:music:j_pop",
"name": "J-pop",
"subtype": "urn:tag:genre:music"
}
],
"targetOnly": [
{
"id": "urn:tag:specialty_dish:place:avocado_toast",
"name": "Avocado Toast",
"subtype": "urn:tag:specialty_dish:place"
},
{
"id": "urn:tag:keyword:media:sweden",
"name": "sweden",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:keyword:media:berlin_germany",
"name": "berlin germany",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:keyword:media:germany",
"name": "germany",
"subtype": "urn:tag:keyword:media"
},
{
"id": "urn:tag:genre:place:restaurant:coffee_shop",
"name": "Coffee shop",
"subtype": "urn:tag:genre:place"
}
],
"unionCount": 84,
"sharedCount": 16,
"buyerTop20MissingShare": 0.65
},
"shortlistAverages": {
"value": 0.13021980374501824,
"sharedCount": 13.5,
"buyerTop20MissingShare": 0.7375
}
},
{
"id": "t3-m3",
"label": "m3 Cross-domain agreement",
"data": {
"value": 0.7998608977973249,
"domains": [
{
"type": "urn:entity:artist",
"clash": [
{
"name": "EXID",
"affinity": 0.7362260279778138
},
{
"name": "Wonder Girls",
"affinity": 0.7458797839265485
},
{
"name": "Stray Kids",
"affinity": 0.7469934986149106
}
],
"label": "Music",
"score": 0.7674886564253337,
"shared": [
{
"name": "Ariana Grande",
"affinity": 0.8459356913731139
},
{
"name": "Taylor Swift",
"affinity": 0.8075281525740218
},
{
"name": "Jennie",
"affinity": 0.7795901054661714
}
],
"expected": 25,
"returned": 25
},
{
"type": "urn:entity:tv_show",
"clash": [
{
"name": "Jane the Virgin",
"affinity": 0.8501250750938979
},
{
"name": "Gilmore Girls",
"affinity": 0.8514727280340234
},
{
"name": "Hart of Dixie",
"affinity": 0.8526760236085152
}
],
"label": "TV",
"score": 0.8721420782078784,
"shared": [
{
"name": "Workin' Moms",
"affinity": 0.9017056377394284
},
{
"name": "Emily in Paris",
"affinity": 0.8990156676121731
},
{
"name": "Friends from College",
"affinity": 0.890227944005834
}
],
"expected": 25,
"returned": 25
},
{
"type": "urn:entity:movie",
"clash": [
{
"name": "Beauty and the Beast",
"affinity": 0.7414830584971704
},
{
"name": "Aladdin",
"affinity": 0.75759923595574
},
{
"name": "La La Land",
"affinity": 0.785265136216751
}
],
"label": "Film",
"score": 0.8153317187209452,
"shared": [
{
"name": "Marriage Story",
"affinity": 0.8530477478433645
},
{
"name": "Hidden Figures",
"affinity": 0.8522311864616888
},
{
"name": "Green Book",
"affinity": 0.8472925965619994
}
],
"expected": 25,
"returned": 25
},
{
"type": "urn:entity:podcast",
"clash": [
{
"name": "Stanning BTS",
"affinity": 0.6804669043574191
},
{
"name": "IDOL 42",
"affinity": 0.6998758010020184
},
{
"name": "Daebak Show w/ Eric Nam",
"affinity": 0.7110157848454179
}
],
"label": "Podcasts",
"score": 0.744481137835143,
"shared": [
{
"name": "Pretty Big Deal with Ashley Graham",
"affinity": 0.7978736622965291
},
{
"name": "AsianBossGirl",
"affinity": 0.796392046621255
},
{
"name": "Off The Vine with Kaitlyn Bristowe",
"affinity": 0.7748046737164052
}
],
"expected": 25,
"returned": 25
}
],
"coverage": 1
},
"shortlistAverages": {
"value": 0.8006435967791996,
"domains[0].score": 0.7558883662204854,
"domains[1].score": 0.8738105180061315,
"domains[2].score": 0.8301890189706208,
"domains[3].score": 0.7426864839195607
}
},
{
"id": "t3-m4",
"label": "m4 Demographic alignment",
"data": {
"buyer": {
"male": -0.32,
"female": 0.32,
"25_to_29": 0.32,
"30_to_34": 0.29,
"35_to_44": -0.68,
"45_to_54": -0.41000000000000003,
"55_and_older": -0.54,
"24_and_younger": 0.35000000000000003
},
"value": 0.6016505153521267,
"cosine": 0.20330103070425323,
"target": {
"male": -0.35000000000000003,
"female": 0.35000000000000003,
"25_to_29": 0.05,
"30_to_34": -0.78,
"35_to_44": 0.1,
"45_to_54": 0.05,
"55_and_older": -0.66,
"24_and_younger": -0.01
},
"coverage": 1,
"biggestGap": {
"buyer": 0.29,
"bucket": "30_to_34",
"target": -0.78
}
},
"shortlistAverages": {
"value": 0.549469416340185,
"cosine": 0.09893883268036997
}
},
{
"id": "t3-m5",
"label": "m5 Geographic footprint",
"data": {
"value": 0.20954238173634743,
"coverage": 1,
"metroCount": 55,
"whiteSpace": [
{
"lat": 40.7128,
"lon": -74.006,
"buyer": 0.9990561006345081,
"metro": "New York",
"target": 0.950772642639582,
"buyerRel": 0.09629061642407455,
"targetRel": 0.04800715842914849
},
{
"lat": 42.3601,
"lon": -71.0589,
"buyer": 0.9953728336804654,
"metro": "Boston",
"target": 0.9305850395091583,
"buyerRel": 0.09099506842714034,
"targetRel": 0.026207274255833246
},
{
"lat": 37.7749,
"lon": -122.4194,
"buyer": 0.9962956640962388,
"metro": "San Francisco",
"target": 0.9587984469610832,
"buyerRel": 0.05847358911128786,
"targetRel": 0.020976371976132224
},
{
"lat": 45.5152,
"lon": -122.6784,
"buyer": 0.9929958142836254,
"metro": "Portland",
"target": 0.9283320565652085,
"buyerRel": 0.08060484365071718,
"targetRel": 0.01594108593230026
},
{
"lat": 37.3382,
"lon": -121.8863,
"buyer": 0.997238782902343,
"metro": "San Jose",
"target": 0.9379416726840089,
"buyerRel": 0.06532603448814989,
"targetRel": 0.006028924269815716
},
{
"lat": 41.8781,
"lon": -87.6298,
"buyer": 0.9971741020217509,
"metro": "Chicago",
"target": 0.9147866212461107,
"buyerRel": 0.08398669679443349,
"targetRel": 0.0015992160187932036
},
{
"lat": 47.6062,
"lon": -122.3321,
"buyer": 0.9976298916492312,
"metro": "Seattle",
"target": 0.9171161629467887,
"buyerRel": 0.0753352094302796,
"targetRel": -0.005178519272162951
},
{
"lat": 25.7617,
"lon": -80.1918,
"buyer": 0.9963190662254924,
"metro": "Miami",
"target": 0.8917898917283762,
"buyerRel": 0.09740467952881149,
"targetRel": -0.007124494968304695
}
],
"correlation": -0.5809152365273051,
"strongholds": [],
"whiteSpaceCount": 10,
"relativeToCohort": true
},
"shortlistAverages": {
"value": 0.5454106162909474,
"correlation": 0.09082123258189484
}
},
{
"id": "t3-m6",
"label": "m6 Momentum",
"data": {
"z": 0.0496824124354589,
"value": 0.5082804020725765,
"priorSd": 0.0007935904687299037,
"coverage": 1,
"priorMean": 0.06558891458264271,
"normalised": true,
"recentMean": 0.06658256283135189
},
"shortlistAverages": {
"z": 0.24859334489178028,
"value": 0.5414322241486301
}
},
{
"id": "t3-profile",
"label": "Qloo entity profile: Oatly",
"data": {
"name": "Oatly",
"drivers": [
{
"name": "Starbucks",
"score": 1
}
],
"ownership": "independent",
"keyMarkets": [
"Sweden",
"United States",
"United Kingdom",
"Germany",
"Canada"
],
"popularity": 0.9401688393144717,
"screenRank": 7,
"foundedYear": 1994,
"priceRangeUsd": [
4,
7
],
"ultimateParent": "Oatly Group AB",
"forwardAffinity": 0.6805259013936693,
"competitorBrands": [
"Califia Farms",
"Silk",
"Alpro",
"Minor Figures",
"Pacific Foods"
],
"sharedCategories": [
{
"name": "Food & Beverage",
"score": 0.7305072539555804
}
],
"knownPartnerships": [
"Nespresso",
"AVAVAV",
"EF Pro Bikers"
],
"marketPositioning": "Premium, mission-driven plant-based dairy alternative brand with a focus on sustainability and lifestyle integration."
},
"shortlistAverages": {}
},
{
"id": "t3-score",
"label": "Composite score",
"data": {
"F": 52.20594527233074,
"points": {
"m1": 20.41577704181008,
"m2": 3.5892691951896403,
"m3": 11.997913466959874,
"m4": 9.0247577302819,
"m5": 2.095423817363474,
"m6": 5.082804020725765
},
"coverage": 1
},
"shortlistAverages": {
"F": 53.69256546952215
}
}
]