Competitive Contract Consolidation Opportunity
Consolidate the competitor's work under your relationship — an expansion that's a save.
Sample output for this workflow will appear here once it is captured.
Run the workflow in Claude, ChatGPT, or Phoenix Playground using the buttons below to see real output.
Overview
An expansion play that's a save play too: when your customer has a major GSI / outsourcing contract that overlaps your category, you can bid to consolidate the competitor's work under your relationship. Reads `company_contracts` (which returns GSI / outsourcing relationships — exactly what we want here), tech-stack overlap, and IT spend headroom to surface the consolidation pitch. Cross-references `whitespace-cross-sell-map` (whitespace expansion) and `vendor-sprawl-consolidation-map` (sprawl reduction).
Use cases
The expansion play that's also a save
Your customer has an Accenture contract worth $4M doing the work your platform could do natively. When their renewal window opens, you can bid to absorb that scope. This workflow surfaces every such opportunity, names the consuming function, and frames the pitch. Wins double: bigger ARR with you, less third-party leakage on the customer side.
Honest about which tool to use when
`company_contracts` is GSI / outsourcing only — not your renewal data. This workflow uses it where the tool's actual semantics fit (consolidation pitches). The same data is deliberately NOT used in the churn-prediction workflow, where it would mis-type as customer renewal status. Same dataset, two different roles — used correctly here.
View workflow prompt
# Competitive Contract Consolidation Opportunity
## Parameters
- `{{domain}}` *(required)* — Customer company domain. Example: `acme.com`
- `{{your_product}}` *(required)* — Your product or platform — anchors the category for the consolidation pitch. Example: `HG Insights`
## Purpose
`company_contracts` returns ICT outsourcing / GSI contracts — Accenture, IBM, Cognizant work the customer has bought from third parties. This is exactly the signal we want for consolidation: if {{domain}} has outsourcing in {{your_product}}'s category, that's work potentially recoverable into your platform. Pairs with `whitespace-cross-sell-map` (net-new whitespace) and `vendor-sprawl-consolidation-map` (sprawl reduction).
## Process
1. **GSI / outsourcing scan** — `company_contracts` for {{domain}}. Returns active contracts with vendor (the GSI), service line, value, `startDate` / `endDate` (camelCase MCP surface; `daysUntilRenewal` is a derived field). Surface any contract whose service line overlaps {{your_product}}'s category.
2. **Tech-stack overlap** — `company_technographic` to validate the GSI is actually running tooling in {{your_product}}'s category at {{domain}}. `get_vendor_information` to confirm any unfamiliar vendor name maps to your competitive set.
3. **Function-level read** — `company_fai` to identify which function (Engineering / IT / Operations) consumes the GSI work today. Consolidation pitches go through that function.
4. **Budget headroom** — `company_spend` for {{domain}}: total IT spend, spend by category. Is the GSI contract value a small fraction of category spend (room to absorb under your platform) or the dominant share (harder pitch)?
5. **Pitch frame** — for each consolidation opportunity, name: the GSI vendor (cite `company_contracts`), the service line, the function consuming it, the renewal window (`daysUntilRenewal`), and the budget posture. One-sentence pitch.
## Output Format
- `# 🪢 {{domain}} — Consolidation Opportunities`
- `## GSI / Outsourcing contracts in {{your_product}}'s category` — table: vendor | service line | value | startDate | daysUntilRenewal
- `## Consuming function` — table: opportunity | function | FAI signal
- `## Pitch frames` — 1-3 named pitches, each with: vendor, function, renewal window, one-sentence value framing
- `## Where this doesn't apply` — if no GSI contracts overlap {{your_product}}'s category, say so plainly and recommend `whitespace-cross-sell-map` instead
## Quality Checklist
- Every GSI vendor cites `company_contracts` (this is the ONLY workflow that uses that tool as a primary signal)
- `daysUntilRenewal` cited from MCP output (camelCase) — never inferred
- No fabricated vendors — only catalog-validated via `get_vendor_information` or `company_contracts` returns
- Recommend the alternative workflow (`whitespace-cross-sell-map`) when no consolidation opportunity exists
- Cap tool calls at ~8