Competitor & Product SWOT Analysis Matrix Markdown Table Template
This table runs a SWOT analysis across several products at once: your own in the first row, the alternatives a buyer would realistically consider underneath. Read side by side, it shows where you are differentiated, where a rival is ahead, and which market shifts affect everyone. It is prepared before annual or quarterly planning, kept in the competitive-intelligence wiki for sales and product, and sometimes condensed for the appendix of an investor deck.
Edit This Template
Edit cells, add rows, or sort — the Markdown updates livePaste cells from Excel or Google Sheets into the first header to replace the table · Tab / Enter / arrows move · Shift+F10 opens row & column actions
When to Use This Table
The framework has one structural rule people break constantly. Strengths and weaknesses are internal: things the organization in that row controls, such as its product, team, cost structure, brand, and data. Opportunities and threats are external: changes in customers, technology, regulation, or competition that nobody in the row controls but everybody must respond to. In a competitor matrix, “internal” means internal to the company in that row, and the external columns often overlap between rows because companies in one market face the same environment with different exposure.
A credible matrix makes specific, checkable claims with a source and a date behind each one, ranks the few items that matter, and ends with decisions. A weak one lists adjectives (“great UX”, “strong brand”), puts the team’s own roadmap in Opportunities, and relies on impressions of competitors nobody has used recently. The analysis only becomes useful when it is converted into strategy, which is what the TOWS variation below is for.
Formatting This Table in Markdown
A competitor & product swot analysis matrix table puts a few things in cells that Markdown treats as syntax. These are the ones to watch so it renders correctly on GitHub, GitLab, Obsidian and docs sites.
Reproduce the classic 2×2 with a header row
The template lays quadrants out as columns, one competitor per row. For the textbook grid, use a header row of Helpful and Harmful with row labels Internal and External; the top-left header cell may be empty, but a header row is mandatory because GFM has no headerless tables (see headerless tables).
Four text columns: transpose when comparing few rivals
With two or three competitors, make the quadrants the rows and the competitors the columns, so each column stays narrow and reads top to bottom. With many competitors keep one row each, but limit every cell to a few short items.
Cite sources with reference links
Write
[source][a]in the cell and define[a]: https://…under the table so evidence links do not bloat the row. A bare[1]stays literal text unless a[1]: …definition exists somewhere on the page, in which case it silently becomes a link.
What Goes in Each Column
| Column | Alignment | What to put here |
|---|---|---|
| Evaluated Platform | left :--- | The product or company name in bold, with your own in the first row and competitors below in order of how often buyers compare you. Name the specific product and plan you evaluated when a vendor sells several, since their strengths differ by tier. |
| Strengths (S) | left :--- | Internal advantages that buyers notice, written as concrete facts: “runs entirely in the browser; no upload”, not “privacy”. Two to four items, most important first, separated with <br> and a bullet character so they render as a list inside the cell. |
| Weaknesses (W) | left :--- | Internal limitations the row’s owner could fix but has not, stated as plainly as the strengths. For your own product, take them from lost-deal notes, churn reasons, and support tickets; self-assessed weaknesses tend to be the comfortable ones. |
| Opportunities (O) | left :--- | External conditions that could favour this row’s company: a shift in user behaviour, a new platform, a regulation, a competitor exiting. Write the condition, not your plan to exploit it; the plan belongs in a strategy table built from this one. |
| Threats (T) | left :--- | External developments that could hurt this company: substitutes, platform policy changes, pricing pressure, new entrants. Name the mechanism (“AI assistants answer the request directly in chat”) so the threat can be monitored, and keep mitigations in the strategy table rather than in this cell. |
How to Fill It In
- 1Choose competitors from evidence: the alternatives named in lost-deal notes, sales calls, review sites, and the “what did you use before?” question in onboarding surveys. Include the substitute people really use, even if it is a spreadsheet or doing nothing.
- 2Collect competitor facts from primary sources: their pricing page, documentation, changelog, status page, job postings, and a hands-on trial. Record the date checked next to each claim, because pricing pages and feature sets change without notice.
- 3Source your own strengths and weaknesses from outside the team: win and loss interviews, review-site comments, churn surveys, and support tags. Internal opinion can add items but should not be the only evidence for any of them.
- 4Write opportunities and threats once for the market, then mark per row how exposed each company is. This keeps the external columns consistent and stops a threat appearing for your row but quietly missing for an identical competitor.
- 5Rank each quadrant, keep the top three or four items, and convert the matrix into actions with a TOWS table. Assign each action an owner before the planning meeting ends.
Ready-to-Paste Variations
Classic 2×2 SWOT for one product
The textbook layout, for when you analyse only your own product. GFM has no merged cells, so the internal and external rows are labelled in the first column; merged cells explains the alternatives.
| | Helpful | Harmful |
| :--- | :--- | :--- |
| **Internal** | **Strengths**<br>• Client-side processing; files never uploaded<br>• Large template library | **Weaknesses**<br>• No saved documents across devices<br>• Very large files limited by browser memory |
| **External** | **Opportunities**<br>• More teams keep docs in Markdown repositories<br>• Growing privacy requirements in procurement | **Threats**<br>• AI assistants produce tables directly in chat<br>• Editors adding built-in table tools |TOWS strategy matrix
Turns the analysis into strategies by pairing internal factors with external ones. Each cell should contain an action someone can own, not another observation.
| | Opportunities | Threats |
| :--- | :--- | :--- |
| **Strengths** | **SO (use strengths to pursue)**<br>Publish a privacy note for procurement teams | **ST (use strengths to defend)**<br>Offer an AI-chat paste cleanup that fixes misaligned output |
| **Weaknesses** | **WO (fix weaknesses to pursue)**<br>Add optional sync for teams that want it | **WT (minimize both)**<br>Stream large files instead of loading them whole |Evidence log for competitor claims
Keep this beneath the matrix. Every claim about a rival points to a source and a date, which is what makes the matrix safe to share with sales or investors.
| Claim | Platform | Quadrant | Source | Checked |
| :--- | :--- | :---: | :--- | :---: |
| Shows display ads on the editor page | Legacy converter A | W | Hands-on test, screenshot in folder | YYYY-MM-DD |
| Uploads pasted data to its server | Legacy converter A | W | Network tab during conversion | YYYY-MM-DD |
| Paid plan adds team workspaces | Competitor B | S | Public pricing page | YYYY-MM-DD |Common Mistakes
Listing your own initiatives as opportunities (“launch a browser extension”).
Ask what external change makes the initiative worthwhile, and write that instead, such as “developers increasingly edit docs in the browser on GitHub”. The extension then appears in the TOWS table as an SO strategy.
Writing mitigations in the Threats column.
Keep the quadrants descriptive and put responses in a separate strategy table. Mixing them hides whether a threat has a response at all, and makes the matrix harder to update when the plan changes.
Vague entries such as “good UX” or “strong brand”.
Replace each with something observable and comparable: “exports to five formats with one click”, “ranks first for its main product query”. If two people cannot agree whether the statement is true, it is not specific enough.
Competitor weaknesses based on memory or hearsay.
Re-test each claim before the matrix circulates and log the source and date. An outdated claim in a sales deck is embarrassing when a prospect points out it was fixed months ago.
Related Markdown Table Templates
Browse all 50 templatesSaaS Tiered Pricing Matrix
Tiered pricing table featuring monthly subscription costs, included user seats, bandwidth quotas, and key tier differentiators.
Product & Competitor Feature Matrix
Side-by-side feature comparison comparing your platform against primary market alternatives and legacy tools.
ROI & Annual Cost Savings Matrix
Financial cost-benefit analysis comparing current vendor costs, manual engineering overhead, and projected tool savings.
Competitor & Product SWOT Analysis Matrix: Frequently Asked Questions
What is the difference between a strength and an opportunity?
Control. A strength is something the company has or does, such as a fast parser or a loyal community. An opportunity is a condition outside the company, such as a new platform or a change in buyer behaviour, that it could take advantage of.
Should a SWOT analysis include competitors?
A classic SWOT covers one organization, but competitors already appear in its threats. A row per competitor, as in this template, works well for competitive intelligence because it shows relative position, provided each row is held to the same evidence standard as your own.
How do I put bullet points inside a SWOT table cell?
Markdown lists do not work inside GFM table cells. Type a bullet character such as • at the start of each item and separate items with <br>, which GitHub and most renderers display as a line break inside the cell.
How often should a competitive SWOT be updated?
Review it at each planning cycle, and update individual rows whenever a competitor changes pricing, ships a major feature, or shows up in lost deals more often. Dating each claim makes it obvious which rows are stale.