NYSE:MA Mastercard Incorporated

ISIN: US57636Q1040
FinancialsPayments NetworkMature compounder
NYSE · Purchase, NY · Financial Services / Credit Services · CEO Michael Miebach Analysis Status: Starting
$489.79
-0.65%
20 Jun 2026 · Signal v6
DISCLAIMER: This is a quantitative framework for educational purposes only. It is not financial advice. Always do your own research and consult a licensed financial advisor before making investment decisions.
HorizonSignalComposite ScoreConfidenceKey Driver
Short-term (1–3 mo)HOLD5962%Strong business, but strongly-bearish near-term tape near 52wk low
Medium-term (6–12 mo)STRONG BUY6770%BUY amplified — Tailwind driver + XLF Outperform sector
Long-term (3–5 yr)BUY7574%Quality compounder; XLF long Neutral so not amplified
Next update: 2026-07-06 — default +14d (no impactful event in window; earnings ~2026-07-30 beyond window; Jul 4 rolled to Jul 6)
Table of Contents
1Five-Pillar Scorecard2Hard Gates & Do-Not-Buy Status3Pillar Detail: Business Quality4Pillar Detail: Valuation Attractiveness5Pillar Detail: Underlying Drivers6Pillar Detail: Economic Alignment7Pillar Detail: Entry/Exit Timing8Economic Event Risk9Multi-Timeframe Technical Analysis10Price Chart (6-Month Daily)11Scenario Summary12Entry / Exit Rules13Position Sizing Context14Calibration Snapshot15Data Sources & Methodology
1

Five-Pillar Scorecard

Five independent scores — each 0–100 with its own confidence. The three fundamental pillars (Quality / Valuation / Timing) set the base BUY/HOLD/SELL via the Decision Matrix; the two context pillars (Underlying Drivers, Economic Alignment) then amplify a BUY to STRONG BUY or a SELL to STRONG SELL when both corroborate.

Business Quality

88
wide-moat compounder
conf 82%

Valuation Attractiveness

66
attractive vs own history & targets
conf 80%

Entry/Exit Timing

45
weak — bearish tape
conf 70%

Underlying Drivers

70
Tailwind
conf 68%

Economic Alignment

70
Trend-Following
conf 70%
2

Hard Gates & Do-Not-Buy Status

Binary safety checks — any TRIGGERED gate is a hard cap regardless of the scores above; CAUTION gates are sizing notes.
Financial Distress
Interest coverage 27.8x, net debt ~4% of mkt-cap. Current ratio 0.98 (lean by design, not declining). Clear.
Earnings Event Risk
Next earnings ~2026-07-30, >14 days out. Clear.
Valuation Ceiling
$490 well below highest target $739; multiple near low end of 5-yr range. Clear.
Accounting / Dilution
Share count falling (buybacks); modest SBC; net income = operating income (no MTM gains). Clear.
Regulatory / Binary
Interchange regulation/litigation is chronic, not a near-term binary event. Clear (tracked as a risk).
Severe Driver Collapse
Driver 70 (Tailwind). Clear.
All gates clear (✓). No hard cap on the signal; no Do-Not-Buy trigger fired.
3

Pillar Detail: Business Quality

A deep dive into the Quality score: business economics, moat, ROIC and the industry benchmark.
Business Quality — Pillar Score
Wide-moat, cash-gushing payments network compounding ~15% at a 46% net margin.
88
Confidence 82% · moat avg 87 · benchmark 85

Mastercard sits in the Mature compounder band of its lifecycle — ~15% revenue growth (Q1-26 +15.8% YoY) paired with a 46% net margin and prodigious free cash flow. Although classified under Financial Services / Credit Services, it is not a balance-sheet lender: it is a fee-based, two-sided payment network. So the bank lens (P/TBV, NIM, credit provisions) does not apply; it is scored on network margins, ROIC, cash generation and moat. Data-basis check: FMP "revenue" here is genuine net network revenue (not gross interest income) — the lender-revenue trap is N/A.

Sub-signalReadingScore
Revenue trajectory~15-16% YoY, steady (Q1-26 $8.40B, +15.8%); TTM ~$33.9B85
Profitability vs peersNet margin 45.9%, operating 59%, EBITDA 63% — elite across any sector95
Cash generationFCF/OCF 0.97; FCF margin ~52%; ~$17.8B TTM FCF95
Balance-sheet healthInterest coverage 27.8x, net debt ~4% of mkt-cap; current ratio 0.98 (lean by design); tangible book negative from buybacks (capital-return artifact, not distress)80

Industry Benchmark — Payments Network (TPV growth + take-rate stability)

Volume growth high-single/low-double digits with a stable-to-rising take rate; revenue compounding ~15% while margins hold. Both legs strong → Benchmark score 85/100. The network scales with almost zero marginal cost, so revenue growth drops to FCF.

Competitive Moat

Pricing Power

85
83% gross margin; pricing partly capped by interchange regulation

Network Effects

95
Classic two-sided cardholder ↔ merchant flywheel

Switching Costs

80
Issuers/merchants embedded in rails; slow A2A erosion

Cost Advantage

90
Global scale; near-zero marginal processing cost

Intangibles

85
Mastercard/Maestro brand; licensing & security IP

Moat average 87/100 — among the widest in the market.

Competitive Environment (feeds Switching Costs & Cost Advantage)

The networks are a duopoly attacked at the edges, not the core.

Rival / threatPositionShare trajectory vs MA
Visa (V)~2x MA's payment volume; the dominant networkStable duopoly; MA growing modestly faster — gradual share gain
American Express (AXP)Closed-loop, premium / affluent nicheHolds premium niche; not taking core share
PayPal / walletsOften ride on the rails (funded by cards)Net-neutral to slightly positive for MA volume
Account-to-account / real-time (Pix, UPI, FedNow)Bank-rail bypass; structural long-term threatErosion vector in some geographies; gated by MA's own RTP/Vocalink assets
Interchange regulationEU/US caps, ongoing litigationChronic pressure on take rate — the reason Switching Costs is 80 not 95

Net: share is stable-to-rising against card peers; the credible long-run erosion is A2A + regulation, which is why Switching Costs (80) and Pricing Power (85) are not maxed.

ROIC & Capital Allocation

ComponentReadingScore
ROIC / returnsFMP ROE & ROA both 5/5; ROIC well above 40% (equity flattered low by buybacks)95
Capital allocationDisciplined buybacks (shares 929M→891M, ~4%/yr) + 18% dividend payout85
Skin in the gameLow insider ownership (typical mega-cap); modest SBC, no dilution55

Quality verdict: 88/100. A wide-moat, cash-gushing compounder; the only blemishes are regulatory pricing pressure and an A2A long tail.

4

Pillar Detail: Valuation Attractiveness

Sector-appropriate multiples, FCF yield, reverse-DCF implied growth, embedded optionality, and the analyst-consensus cross-check.
Valuation Attractiveness — Pillar Score
Attractive vs its own history, reverse-DCF and analyst targets — not on absolute multiples.
66
Confidence 80% · FCF yield 4.0% · +35% to consensus

MA is expensive on absolute multiples but attractive relative to its own history and to analyst targets. At $489.79 it trades 28.3x TTM EPS ($17.30), 24.9x 2026E ($19.68) and 21.5x 2027E ($22.81) — near the low end of its multi-year range after a ~19% slide off the $601 high to within 18% of the 52-week low.

Reference (weight)ReadingScore
Sector / peer median (25%)Premium to broad Financials (~15x) but roughly in line with payment-network peer Visa — fair on the correct comp set55
Own historical decile (20%)~28x TTM / ~25x fwd sits in the bottom ~3rd decile of its 5-yr range — cheap vs itself80
Growth-adjusted PEG (15%)PEG 1.34 (TTM); fwd PEG ~1.6 on ~15% EPS growth — fair, slightly rich50
Reverse-DCF implied growth (25%)Price implies ~9-10%/yr FCF growth; consensus expects ~13-15% EPS growth — market pricing in less than analysts72
Analyst target cross-check (10%)Consensus $660 (median $665, high $739, low $561) — +34.8% upside; every target above price88
Grades consensus (5%)1 Strong-Buy / 50 Buy / 13 Hold / 0 Sell — 79.7% bullish72

FCF Yield (universal anchor)

~$17.8B FCF / $443.8B EV = 4.0% FCF yield — the "fair, quality-growth" band (3-5%). Dividend yield 0.67% on an 18% payout leaves ample reinvestment + buyback room.

Earnings-quality check (step 7b) — CLEAN PASS

Mastercard's net income is its operating income: Q1-26 net $3.88B vs operating $4.91B, with negative "other income" (−$95M). There are no mark-to-market gains on private-AI stakes inflating the bottom line (the mega-cap trap that flatters NVDA/MSFT P/Es). So the 28x P/E is a clean, un-inflated multiple — a genuine positive for the valuation case. No normalisation needed; no dilution/accounting gate.

Embedded Optionality / Free Upside

Inside the network multiple sit faster-growing arms the market under-prices: Value-Added Services & Cyber/Intelligence (Recorded Future, fraud/identity), open banking, B2B / commercial payments, and real-time / A2A rails (Vocalink) plus crypto/stablecoin settlement. These both monetise and hedge the A2A threat — you own the disruptor's toolkit for free. A modest +5 valuation tilt; not the base case.

Valuation verdict: 66/100 — Attractive, just over the line. Honestly stated: it is not cheap on absolute P/E or P/B (FMP scores both 1/5); the Attractive rating rests on the own-history decile, the sub-consensus reverse-DCF, the clean-earnings P/E, and a ~35% gap to consensus targets. FMP overall health B (ROE/ROA 5/5, DCF 4/5, dragged by P/E & P/B).

5

Pillar Detail: Underlying Drivers

The dominant external force the stock is tethered to, scored 0–100. A context pillar: it does not change the base signal — it feeds amplification (tailwind ≥65 can lift BUY→STRONG BUY; headwind ≤35 can push SELL→STRONG SELL).
Primary Driver
Consumer payment volume + secular cash→digital shift
70
Tailwind (≥65 — amplification-eligible)

Primary driver: consumer payment volume + the secular cash→digital shift. MA's revenue is a take on gross dollar volume and cross-border spend, so its fortunes track consumer spending power and the multi-decade migration from cash to electronic payments (still trillions in cash globally).

Horizon (weight)ReadingScore
Historical (25%)Payment volumes compounding high-single/double digits through the cycle; cross-border travel recovered75
Current (50%)Mixed-but-positive: Retail Sales +0.9% (beat), but employment softening (unemp →4.5%E, NFP slowing to 70k) — consumer holding for now68
Forward (25%)Secular cashless tailwind intact; A2A a slow offset; macro consumer decelerating72

Driver score 70/100 — Tailwind. At ≥65 this makes MA eligible to amplify a base BUY to STRONG BUY where the economy also corroborates. It does not change the base signal or the three fundamental pillars. Cushion is thin: a sharp consumer rollover would pull this under 65 and downgrade Medium to plain BUY.

6

Pillar Detail: Economic Alignment

How the current economic climate sits relative to this stock, read from the latest Macro-Economic report. Classifies the macro pressure (Tailwind / Neutral / Headwind) — the second amplification input — and frames a long entry as Trend-Following or Contrarian with a 0–100 conviction.
Stance · Pressure
Trend-Following · Tailwind
70
conviction

Macro regime: Soft Landing / Reacceleration co-lead, hawkish Fed (higher-for-longer). Financials (XLF) signals: Short Outperform, Medium Outperform, Long Neutral. So macro pressure is a Tailwind near-term (S/M) and Neutral long-term. Buying a favoured sector aligns with the macro = Trend-Following. NOTE the non-monotonic signal set this produces: amplification requires econ pressure Tailwind AND driver ≥65 — present at Short & Medium, but the L=Neutral reading is exactly why the Long signal is BUY (not amplified) while Medium is STRONG BUY.

Source: MacroDriver-state-20260620 (XLF sector forecast) · Macro report 2026-06-20

7

Pillar Detail: Entry/Exit Timing

The risk-reward framework, relative strength vs SPY and the sector ETF, the macro overlay, news-derived sentiment, and the catalyst cluster.
Entry/Exit Timing — Pillar Score
Strongly-bearish multi-timeframe tape near the 52-week low; only the monthly secular trend holds up.
45
Confidence 70% · MTF strongly bearish · 52wk pos ~18%

Excellent business, poor near-term tape. Price $489.79 is below the 50-day ($498.89) and 200-day ($534.82), within ~18% of the 52-week low, with multi-timeframe confluence strongly bearish — only the monthly (secular) trend is still up.

Sub-signalReadingScore
MTF trend (30%)Monthly up, weekly/daily down (daily strong-downtrend), confluence strongly bearish37
Risk-reward (20%)Near support $480/$464; ATR ~$10.6 (2.2%); huge reward to base, but trend against entry48
Relative strength (15% macro/sent/cat)Lagging SPY & XLF over 3m (down ~13% from highs); 52-wk position ~18%32
Macro overlayFed on hold 3.75%; XLF sector in favour (Outperform short/medium)60
SentimentAll "maintain", 1 upgrade (Freedom Broker), 0 downgrades; estimates rising; news neutral (crypto/BitLicense)60
Catalyst densityNext earnings ~late-July (>30d); no cluster — calm70

Constructive flickers: daily RSI 47.9 (not oversold yet) with MACD histogram turning up (+1.10), and price holding just above the $480 shelf on elevated volume (1.73x). Timing verdict 45/100 — Neutral/weak. This is the lone reason the short-horizon signal is HOLD rather than BUY.

8

Economic Event Risk

High-impact macro releases in the next 14 days that could swing this stock, plus the last 7 days of surprises.

Upcoming events (next 30 days)

DateEventImpactForecastPreviousRelevant?Why
2026-06-25Core PCE (May)High0.3% MoM0.2%⚠ MedInflation read feeds the Fed path / consumer spend
2026-06-30CB Consumer Confidence (Jun)High93.1✅ YesDirect read on payment-volume driver (consumer)
2026-07-02Non-Farm Payrolls (Jun)High70k172k✅ YesEmployment = consumer health behind spend
2026-07-14CPI (Jun)High3.9% YoY4.2%⚠ MedInflation / Fed; affects discretionary spend

Recent surprises (last 7 days)

DateEventActualForecastSurpriseImpact
2026-06-17Fed Rate Decision3.75%3.75%In-lineNeutral — higher-for-longer held
2026-06-17Retail Sales (May)+0.9%+0.5%+80% beatPositive — consumer spend resilient (driver tailwind)

No high-impact macro release inside the 3-day WAIT-override window. The relevant cluster for a payments name is the consumer/employment run late-June into early-July (Consumer Confidence, NFP) — supportive if the consumer holds. None reshapes the thesis before the next scheduled refresh.

9

Multi-Timeframe Technical Analysis

Trend, RSI and breakout status across monthly / weekly / daily / hourly / 15-minute, with a confluence verdict.
TimeframeTrendDirectionRSIMACDKey S/RBreakoutVol
MonthlyUptrend ↑Bullish46.0- (hist > sig)S: $340 R: $602Resist. breakout0.9x
WeeklyDowntrend ↓Bearish39.6- (turning up)S: $464 R: $570Support breakdown1.0x
DailyStrong downtrend ↓Bearish47.9- hist +1.10 (up)S: $480 R: $506Support breakdown1.7x
HourlyWeakening →Neutral42.0- fallingS: $487 R: $505Support breakdown
15-minStrong downtrend ↓Bearish49.9- hist +0.17S: $489 R: $495Support breakdown
Confluence: Strongly Bearish · MTF Score 37

The secular (monthly) uptrend is intact but every tradable timeframe below it is down: price is under the 50- and 200-day, weekly broke support, daily is in a strong downtrend. The constructive nuance is that daily RSI (47.9) is not yet oversold and the MACD histogram is turning up off a small base, with price defending the $480 shelf on above-average volume. Read: a high-quality name being marked down — accumulate into the $464-$480 support zone or on a reclaim of the 50-day ($499), don't chase strength.

10

Price Chart (6-Month Daily)

A 6-month daily close line with SMA50 and key support/resistance — the visual companion to the MTF table.

6-month daily close (orange = SMA50). Price has slid from ~$600 to within 18% of the 52-week low ($464.52), now defending the $480 shelf below the 50- and 200-day. Green line = $600 base 12-mo target.

11

Scenario Summary

Bull / Base / Bear 12-month price paths with triggers and probability weights.

Bull · 25% · $700 (+43%)

Consumer holds, volumes re-accelerate, multiple re-rates toward ~30x 2027E EPS as the tape turns. Value-added-services optionality is monetised. Tracks back toward analyst high ($739).

Base · 50% · $600 (+22%)

~15% EPS growth continues; multiple normalises to ~26x 2027E (~$23). Recovery toward the 200-day / prior range. Sits below the $660 analyst consensus, i.e. a conservative base.

Bear · 25% · $420 (-14%)

Consumer rolls over (employment softening bites), volumes slow and the multiple compresses to ~22x. Breaks the 52-week low; A2A/interchange headlines weigh.

Probability-weighted 12-month value ≈ $580 (+18%) (0.50×$600 + 0.25×$700 + 0.25×$420). Skew favourable: base+bull upside outweighs a contained bear.

12

Entry / Exit Rules

Three independent entry paths (Fundamental · Technical · Catalyst) and three exit triggers (Stop-Loss · Thesis · Profit-Target). Any one entry path is a valid entry — the more that agree, the larger the position the conviction ladder suggests. Exits are graded by severity, not count.

How to read this — the Conviction Ladder

The three entry groups are alternative paths to a buy, not a checklist. A group counts only when all its sub-conditions hold. How many groups are satisfied sets the suggested size — it does not gate whether you may enter: 1 group = Half-Size (a valid starter/scale-in), 2 = Full-Size, 3 = Over-Size (highest conviction); 0 = Wait (no path open yet). A strong overall signal can still read Wait here when the stock is well above its entry zones — that flags "good business, no entry edge right now," not a contradiction. Exits are graded by severity of what is live, not by a count: a hard stop is an Exit on its own.
Entry conviction: Half-Size1 of 3 groups met — one path open — starter / scale-in

Fundamental — MET

Cheap vs its own history & targets, with a live driver tailwind — the open path now.
✅ Price $489.79 < fair value ~$600 (base / sub-consensus)
✅ No earnings within 7 days (next ~2026-07-30)
✅ Underlying-Driver score ≥ 50 (70)

Technical — not MET

Tape is bearish; preferred entry is a reclaim of the 50-day OR a tested bounce off support.
⛔ Daily close > SMA50 ($499) on >1.5× volume
⛔ OR a tested bounce off $464-$480 support with a higher low
✅ RSI 35-65 (47.9)

Catalyst — not MET

No event in the 24h window.
· Post-earnings move >+5% with guidance raised/maintained (next ~Jul 30)
· Volume > 2× the 20-day average on the move

Forecast: Fundamental group is MET now (value path open) → conviction Half-Size. Technical group: ~2-4 weeks IF price reclaims the 50-day ($499, ~2% above) on volume, OR sooner on a tested higher-low off $480/$464 — CONFIDENCE Moderate (daily MACD histogram already turning up, but the trend is down so a failed bounce resets the clock). Catalyst group: event-dependent, earnings ~2026-07-30. A second group firing would lift size to Full-Size.

Exit action: Holdno exit trigger is live — hold the position

Stop-Loss — not LIVE

⛔ Two daily closes below $460 (under the $464.52 52-week low)

Thesis Invalidation — not LIVE

⛔ Full-year guidance cut, OR revenue growth decelerates below sector median
⛔ Driver turns to headwind (consumer/volume rollover)
⛔ [catastrophic, fires alone] a hard gate triggers

Profit-Target — not LIVE

⛔ Price into $660 (consensus) AND RSI > 70
⛔ AND Quality hasn't improved to justify the richer multiple

Forecast: Stop unlikely in the next 4-6 weeks — $460 is ~6% below and below the 52-week low; would need an earnings shock or a broad sell-off. RISK TRIGGER: the late-Jun/early-Jul consumer & jobs data; a sharp NFP/Confidence miss could press price toward $464. Profit-target far off (price 26% below the $660 trigger).

Imagine you act at the current price of $489.79 · as of 20 Jun 2026

What if you bought now?

You'd be risking ~6% to the $460 stop (bear $420, -14%) to gain ~+22% base / +43% bull.
  • Risking: stop $460 (-6%); bear $420 (-14%) — and you'd be buying into a strongly-bearish daily tape with only the Fundamental entry path met (Technical not yet).
  • Gaining: base $600 (+22%) · bull $700 (+43%); plus a 4% FCF yield + 0.67% dividend collected while waiting, and free optionality in value-added services / A2A rails.
  • Net: reward:risk ≈ 3.5:1 to base on the stop. A value-led starter (Half-Size) is defensible; a larger add is better earned on a 50-day reclaim or a tested higher low.

What if you sold now?

You'd be giving up +22% base-case upside to protect against a ~14% bear drawdown.
  • Giving up: upside to $600 base / $700 bull; income + compounding; selling a wide-moat compounder below fair value.
  • Protecting: capital if the consumer rolls over to the $420 bear. Exit rules currently triggered? None.
  • Net: no mechanical reason to sell — this is an accumulate/hold zone, not a distribution one.
13

Position Sizing Context

Illustrative portfolio math (not advice) translating conviction into an allocation given risk-per-share and volatility.

Position sizing not computed — specify your portfolio allocation and role for sizing guidance.

14

Calibration Snapshot

Machine-readable snapshot of every score, level and signal, saved alongside the HTML so the next run can compute deltas.
{
  "ticker": "MA",
  "exchange": "NYSE",
  "exchange_ticker": "NYSE:MA",
  "api_ticker": "MA",
  "isin": "US57636Q1040",
  "company": "Mastercard Incorporated",
  "date": "2026-06-20",
  "version": "v6",
  "finder_ticker": "MA",
  "finder_exchange": "NYSE",
  "analysis_status": "on-going",
  "sector": "Financial Services / Credit Services (payments network)",
  "lifecycle_stage": "mature",
  "user_context": {
    "horizon": null,
    "allocation_pct": null,
    "portfolio_role": null
  },
  "price_at_rating": 489.79,
  "signal_short": "HOLD",
  "signal_medium": "STRONG BUY",
  "signal_long": "BUY",
  "primary_signal": "STRONG BUY (medium)",
  "quality_score": 88,
  "valuation_score": 66,
  "timing_score": 45,
  "driver_score": 70,
  "driver_label": "Tailwind",
  "economic_alignment_conviction": 70,
  "economic_alignment_stance": "Trend-Following",
  "economic_pressure": "Tailwind",
  "quality_detail": {
    "industry_benchmark_name": "Payments Network (TPV growth + take-rate)",
    "industry_benchmark_score": 85,
    "moat_score": 87,
    "roic_percentile_vs_peers": 95,
    "capital_allocation": 85,
    "management_skin_in_game": 55
  },
  "valuation_detail": {
    "fcf_yield": 4.0,
    "implied_growth_rate": 9.5,
    "consensus_growth_rate": 14.0,
    "historical_valuation_decile": 3,
    "pe_ttm": 28.3,
    "fwd_pe_2026": 24.9,
    "peg": 1.34
  },
  "timing_detail": {
    "mtf_confluence": 37,
    "risk_reward_score": 48,
    "relative_strength_52wk_pos": 18,
    "catalyst_clustering_score": 70,
    "dynamic_macro_weight": 0.15
  },
  "overall_confidence": 70,
  "fair_value_est": 600,
  "stop_loss": 460,
  "target_price": 660,
  "scenario_base_target": 600,
  "scenario_bull_target": 700,
  "scenario_bear_target": 420,
  "hard_gate_state": "clear",
  "gates_triggered": [],
  "gates_caution": [],
  "do_not_buy_triggers": [],
  "entry_groups_met": 1,
  "entry_conviction": "Half-Size",
  "exit_groups_live": 0,
  "exit_action": "Hold",
  "analyst_target_consensus": 660.43,
  "analyst_target_median": 665,
  "analyst_target_high": 739,
  "analyst_target_low": 561,
  "grades_bullish_pct": 79.7,
  "next_update_date": "2026-07-06",
  "next_update_basis": "default +14d (no impactful event in window; earnings ~2026-07-30 beyond window; Jul 4 rolled to Jul 6)",
  "next_check_date": "2026-07-06"
}
15

Data Sources & Methodology

Audit trail of every data source: fully available (✓), fallback (⚠), or failed (✗), plus provenance-based confidence haircuts.
Data Source Status
get_company_profile / get_financial_ratios price, margins, P/E, PEG, FCF, ISIN, beta 0.74
get_income_statement (8q) revenue/EPS trajectory; earnings-quality decomposition (clean)
get_multi_timeframe_analysis 5-timeframe trend/RSI/MACD/S&R; confluence strongly bearish
get_stock_prices (6mo daily) 125 closes for chart + SMA50
get_price_target_consensus / _summary consensus $660 (8 last-qtr); lastMonthCount 0 → minor recency discount
get_stock_grades / get_grades_consensus 79.7% bullish; all maintains; no downgrades
get_ratings_snapshot FMP B; ROE/ROA 5/5; P/E,P/B,D/E 1/5
get_analyst_estimates 2026-2030 EPS/revenue consensus
get_economic_calendar Fed held 3.75%; consumer/jobs run late-Jun/Jul
get_earnings_calendar returned empty — next earnings ESTIMATED ~2026-07-30 from filing cadence (Q1 filed 2026-04-30)
Impact on scores: High overall coverage. The only gap is the earnings date (estimated from cadence, not confirmed) — it sits beyond the 14-day window so it does not change the next-update schedule. Timing confidence already reflects the bearish tape; no further haircut applied.
DISCLAIMER: This is a quantitative framework for educational purposes only. It is not financial advice. Always do your own research and consult a licensed financial advisor before making investment decisions.