Competitive Intel Agent – Product and Pricing Feature Grid
1. Overview
This process gathers product and pricing information about competing e‑commerce brands and organizes that data into clear feature‑comparison grids. The grids show which competitors offer each product feature and what their pricing looks like, allowing the Competitive Intelligence Analyst to see strengths, gaps, and pricing opportunities at a glance.
2. Business Value
- Strategic Insight – Quickly reveals how your product lineup compares to competitors, supporting pricing and product‑development decisions.
- Speed – Turns raw competitor data into a ready‑to‑use grid, eliminating manual table assembly.
- Consistency – Uses a uniform format so analysts, managers, and executives can interpret the data without ambiguity.
- Competitive Advantage – Highlights missing features or price gaps that can be turned into product improvements or pricing adjustments.
3. Operational Context
- When to run: Whenever a new product is planned, a pricing review is needed, or a competitor‑focused market analysis is requested.
- Who uses it: Competitive Intelligence Analysts, Product Managers, Pricing Managers, and Senior Leadership who need a quick visual comparison of competitors’ product offerings and pricing.
- Frequency: As needed – typically before product launches, quarterly pricing reviews, or when a competitor makes a major product announcement.
4. Inputs
4.1 Competitor List
- Name/Label: Competitor List
- Type: List
- Details Provided: Each competitor’s name and public website URL.
| Competitor Name | Website URL |
|---|
| (e.g., “ShopAlpha”) | (e.g., https://shopalpha.com) |
| (e.g., “ShopBeta”) | (e.g., https://shopbeta.com) |
| … | … |
4.2 Product List
- Name/Label: Product List
- Type: List
- Details Provided: Each product to be compared, including a short identifier and optional description.
| Product Name | SKU | Description |
|---|
| (e.g., “SuperWidget”) | (e.g., “SW‑001”) | (e.g., “A mid‑range widget with battery backup”) |
| (e.g., “MegaWidget”) | (e.g., “MW‑002”) | (e.g., “High‑capacity widget for power users”) |
| … | … | … |
4.3 Feature List
- Name/Label: Feature List
- Type: List
- Details Provided: Each feature to be compared across competitors.
| Feature Name | Description |
|---|
| (e.g., “Battery Life”) | (e.g., “Measured in hours of continuous operation”) |
| (e.g., “Color Options”) | (e.g., “Number of color variants offered”) |
| (e.g., “Warranty Period”) | (e.g., “Length of manufacturer warranty”) |
| … | … |
4.4 Feature Availability Data
- Name/Label: Feature Availability Data
- Type: List
- Details Provided: For every product‑competitor combination, indicate whether the listed feature is offered (Yes) or not (No).
| Product Name | Competitor Name | Feature Name | Present? |
|---|
| (e.g., “SuperWidget”) | (e.g., “ShopAlpha”) | (e.g., “Battery Life”) | Yes |
| (e.g., “SuperWidget”) | (e.g., “ShopAlpha”) | (e.g., “Color Options”) | No |
| … | … | … | … |
4.5 Pricing Data
- Name/Label: Pricing Data
- Type: List
- Details Provided: Price quoted by each competitor for each product, the currency used, and the date the price was observed.
| Product Name | Competitor Name | Price | Currency | Date Captured |
|---|
| (e.g., “SuperWidget”) | (e.g., “ShopAlpha”) | 99.99 | USD | 2025‑08‑01 |
| (e.g., “SuperWidget”) | (e.g., “ShopBeta”) | 95.00 | USD | 2025‑08‑01 |
| … | … | … | … | … |
4.6 Data Collection Date (Optional)
- Name/Label: Data Collection Date
- Type: Date
- Details Provided: The date on which the competitor data was gathered (used for documentation and future reference).
(If not supplied, use the latest date found in the Pricing Data rows.)
5. Outputs
5.1 Feature Availability Grid
- Name/Label: Feature Availability Grid
- Contents: A separate table for each product. Rows are the features from the Feature List. Columns are the competitors from the Competitor List. Each cell contains “Yes”, “No”, or “N/A” (if no information is available).
- Formatting Rules:
- Header row: “Feature / Competitor”.
- Use “Yes” for presence, “No” for absence, “N/A” when data is missing.
- Keep columns aligned using plain‑text table syntax.
5.2 Pricing Summary Grid
- Name/Label: Pricing Summary Grid
- Contents: A table listing each product‑competitor pair, the quoted price, currency, and date captured.
- Formatting Rules:
- Price values displayed with a dollar sign and two decimal places (e.g.,
$99.99).
- If a price is missing, show “N/A”.
- Order rows by product name, then by competitor name.
6. Detailed Plan & Execution Steps
-
Gather Input Files
- Collect the Competitor List, Product List, Feature List, Feature Availability Data, and Pricing Data as described in Section 4.
-
Validate Completeness
- Verify that each table contains at least one row.
- Ensure every product in the Product List appears at least once in the Feature Availability and Pricing data.
- Check that every competitor in the Competitor List appears in the Feature Availability and Pricing tables.
- If any required field is blank (e.g., missing price or missing “Present?” entry), stop the process and flag the record for manual review.
-
Create Master Lists
- Build a unique list of Products from the Product List.
- Build a unique list of Competitors from the Competitor List.
- Build a unique list of Features from the Feature List.
-
Build Feature Availability Grids
For each product:
a. Create a table with a row for each feature.
b. For each competitor, locate the matching row in the Feature Availability Data.
c. Populate the cell:
- “Yes” if the entry is “Yes”.
- “No” if the entry is “No”.
- “N/A” if no entry exists.
-
Build Pricing Summary Grid
a. For each row in the Pricing Data, confirm that the product and competitor are in the Master Lists.
b. If a product‑competitor pair is missing, add a row with “N/A” for missing values.
c. Format the price with a preceding dollar sign and two decimal places.
-
Apply Formatting
- Align columns using pipe (
|) delimiters.
- Use a header row for each table.
- Include a blank line between tables for readability.
-
Output Generation
- Assemble all Feature Availability Grids (one per product) in the order listed in the Product List.
- Follow the grids with the Pricing Summary Grid.
- Provide the final output as plain text (no files).
-
Record Documentation
- Include the Data Collection Date (if provided) as a note at the top of the output.
- Save a copy of the input tables for audit purposes (outside of this automated process).
7. Validation & Quality Checks
| Check | What to Verify | Action on Failure |
|---|
| All required tables present | No table missing (Competitor List, Product List, etc.) | Stop process, flag for manual review |
| Unique competitor names | No duplicate names in the Competitor List | Remove duplicate, re‑run |
| Product‑Competitor pair exists in both Feature and Pricing data | Each product‑competitor appears in both tables | If missing, add “N/A” and flag |
| “Present?” values | Only “Yes”, “No”, or empty (treated as “N/A”) | Replace invalid entries with “N/A”, note in log |
| Price format | Numeric, two‑decimal places, currency present | If not, mark “N/A” and flag |
| Date format | YYYY‑MM‑DD (e.g., 2025‑08‑01) | If invalid, set to “N/A”, flag |
| No missing columns | All column headers present and spelled correctly | Add missing column, set default values, log |
| Data consistency | Product names, competitor names, feature names exactly match across tables | Resolve mismatches before proceeding |
| Empty cells | If no data, fill with “N/A” | No further action |
| Overall completeness | Every product has at least one price entry and one feature entry per competitor | If missing, mark “N/A” and note for manual follow‑up |
8. Special Rules / Edge Cases
- Missing Price – Insert “N/A” for the price cell and record a “Missing price” note in the validation log.
- Feature Not Listed for a Competitor – Show “N/A” in the Feature Availability Grid.
- Multiple Prices for Same Date – Use the most recent entry (based on “Date Captured”). If dates are identical, select the higher price as a conservative estimate and note the decision.
- Zero‑Price Items – Treat “0.00” as a valid price (e.g., free trial).
- Currency Mismatch – If different currencies appear for the same product, list each row separately; do not convert currencies.
- No Competitors – If the Competitor List is empty, abort the process and generate an “Error: No competitors supplied.” output.
- No Products – Same as above for the Product List.
Failure Scenarios
- If any required input (Competitor List, Product List, Feature List, Feature Availability Data, or Pricing Data) is missing or completely empty, the process stops and produces an “Error – required input missing” message; no grids are produced.
- If validation fails (e.g., invalid date format), the process stops, logs the issue, and generates a “Validation Failure” note; no output grids are produced.
9. Example
Input
Competitor List
Product List
| Product Name | SKU | Description |
|---|
| SuperWidget | SW‑001 | Mid‑range widget with 10‑hour battery |
| MegaWidget | MW‑002 | High‑performance widget with 24‑hour battery |
Feature List
| Feature Name | Description |
|---|
| Battery Life | Hours of operation on a full charge |
| Color Options | Number of color variants |
| Warranty | Length of warranty in years |
Feature Availability Data
| Product Name | Competitor Name | Feature Name | Present? |
|---|
| SuperWidget | ShopAlpha | Battery Life | Yes |
| SuperWidget | ShopAlpha | Color Options | No |
| SuperWidget | ShopAlpha | Warranty | Yes |
| SuperWidget | ShopBeta | Battery Life | Yes |
| SuperWidget | ShopBeta | Color Options | Yes |
| SuperWidget | ShopBeta | Warranty | No |
| MegaWidget | ShopAlpha | Battery Life | Yes |
| MegaWidget | ShopAlpha | Color Options | Yes |
| MegaWidget | ShopAlpha | Warranty | No |
| MegaWidget | ShopBeta | Battery Life | Yes |
| MegaWidget | ShopBeta | Color Options | No |
| MegaWidget | ShopBeta | Warranty | Yes |
Pricing Data
| Product Name | Competitor Name | Price | Currency | Date Captured |
|---|
| SuperWidget | ShopAlpha | 99.99 | USD | 2025‑08‑01 |
| SuperWidget | ShopBeta | 95.00 | USD | 2025‑08‑01 |
| MegaWidget | ShopAlpha | 149.99 | USD | 2025‑08‑01 |
| MegaWidget | ShopBeta | 145.00 | USD | 2025 ‑08‑01 |
Data Collection Date: 2025‑08‑01
Output
Feature Availability Grid – SuperWidget
| Feature | ShopAlpha | ShopBeta |
|---|
| Battery Life | Yes | Yes |
| Color Options | No | Yes |
| Warranty | Yes | No |
Feature Availability Grid – MegaWidget
| Feature | ShopAlpha | ShopBeta |
|---|
| Battery Life | Yes | Yes |
| Color Options | Yes | No |
| Warranty | No | Yes |
Pricing Summary Grid
| Product Name | Competitor Name | Price | Currency | Date Captured |
|---|
| SuperWidget | ShopAlpha | $99.99 | USD | 2025‑08‑01 |
| SuperWidget | ShopBeta | $95.00 | USD | 2025‑08‑01 |
| MegaWidget | ShopAlpha | $149.99 | USD | 2025‑08‑01 |
| MegaWidget | ShopBeta | $145.00 | USD | 2025‑08‑01 |
Appendix A – FAQ
Q1: What should I do if a competitor does not have a price listed?
A1: Enter “N/A” for the price and “N/A” for the “Present?” field for all features of that product‑competitor pair. The validation step will flag the missing price for manual review.
Q2: The same product appears with different prices on the same date. Which one should I use?
A2: If the dates are identical, choose the higher price as a conservative estimate and note “Multiple price entries – higher price used” in the validation log. If a later date exists, use the most recent date.
Q3: A feature appears in the Feature List but not in the Feature Availability Data. What to do?
A3: Record “N/A” for each missing entry and note the omission in the validation log. The process will still generate the grid, but the missing data will be visible.
Q4: How are “Yes” and “No” defined for “Present?”?
A4: “Yes” means the feature is offered by the competitor for the product. “No” means the feature is explicitly not offered. If the information is unknown, use “N/A”.
Q5: Can I add more features after the grid is created?
A5: No. The process is static per run. To add new features, restart the process with an updated Feature List and corresponding Feature Availability Data.
Q6: My prices are in different currencies. How should they be displayed?
A6: Keep each price in its original currency. The “Currency” column indicates the currency used. Do not convert currencies within this process.
Q7: How frequently should I refresh the data?
A6: The frequency depends on business needs: before each product launch, at the start of each quarter, or whenever a competitor announces a new product or price change.
Q8: What if the product name is spelled differently in the Product List and the Pricing Data?
A8: Ensure exact matches. If a mismatch occurs, the validation will flag “Product name mismatch”. Correct the spelling in the inputs and re‑run the process.
Q9: What is the recommended way to handle multiple product versions (e.g., “SuperWidget v2”)?
A9: Treat each version as a separate product entry in the Product List, assigning a distinct name (e.g., “SuperWidget v2”) and providing its own feature and pricing data.
Q10: Should I include promotional or discount pricing?
A10: Only include the price that will be presented to customers (the price on the competitor’s public product page). Do not include internal discount rates unless they are publicly displayed.
Appendix B – Glossary
- Competitor – A business that offers a similar product or service within the same market.
- Product – The specific item being compared (e.g., “SuperWidget”).
- Feature – A distinct attribute or capability of a product (e.g., “Battery Life”).
- Feature Availability – The status of a feature for a given product and competitor (Yes/No).
- Pricing Data – The monetary amount a competitor charges for a specific product, including currency and date collected.
- Feature Grid – A tabular representation that aligns product features or pricing across multiple competitors.
- Feature Grid (Feature‑Availability Grid) – The part of the grid that shows whether each competitor offers each feature.
- Pricing Grid (Pricing Summary) – The part of the grid that lists each competitor’s price for each product.
- Data Collection Date – The date on which the competitor’s product information and pricing were captured.
- N/A – “Not Available”; used when no data is present for a specific cell.
- Yes/No – Simple binary values indicating the presence (Yes) or absence (No) of a feature.
Appendix C – Reference Materials
C1. Feature List Template
| Feature Name | Definition | Example Value | Typical Data Source |
|---|
| Battery Life | Number of hours a product can operate on a single charge. | “10 hours” | Product specification page. |
| Color Options | Count of different color variations offered. | “3 colors” | Product page UI. |
| Warranty | Length of the warranty in years. | “2 years” | Warranty policy page. |
| Weight | The weight of the product in kilograms or pounds. | “1.2 kg” | Product detail sheet. |
| Dimensions | Physical dimensions (L × W × H) in centimeters or inches. | “10 × 5 × 2 cm” | Product spec sheet. |
| Shipping Cost | Cost to ship the product to a standard destination. | “$5.99” | Shipping policy page. |
| Return Policy | Number of days a product can be returned. | “30 days” | Returns policy. |
| ... | ... | ... | ... |
Formatting Guidelines for Feature List
- Use plain‑English descriptions.
- Avoid abbreviations unless they are industry standard (e.g., “USB-C”).
- Keep feature names short (3–5 words).
- Use consistent capitalization (title case).
C2. Pricing Formatting Guidelines
- Currency Symbol: Use the standard symbol for the currency (e.g.,
$ for USD).
- Decimal Places: Always show two decimal places (e.g.,
$99.00).
- Currency Code: Include a three‑letter ISO currency code after the price for clarity (e.g.,
$99.99 USD).
- Date Format: Always use
YYYY‑MM‑DD (e.g., 2025-08-01).
- Missing Values: Use “N/A” (uppercase) for any missing or unknown price.
Example Formatting
$99.99 USD – correct
99.99 – incorrect (missing currency symbol and code).
C3. Feature Grid Layout Guide
-
Table Structure
- Header Row: “Feature” followed by each competitor’s name.
- Rows: One row per feature.
- Cells: Use “Yes”, “No”, or “N/A”.
-
Spacing
- Add a blank line between each product’s grid for readability.
- Align vertical bars (
|) for clear column separation.
-
Example Layout
Feature / Competitor | ShopAlpha | ShopBeta
-----------------------------------------
Battery Life | Yes | Yes
Color Options | No | Yes
Warranty | Yes | N/A
- Special Cases
- If a new competitor is added, insert a new column in the next row of the grid.
- If a new feature is added, insert a new row below the existing rows.
C4. Competitor Classification List
| Category | Typical Competitor Names |
|---|
| General Marketplace | Amazon, eBay, Walmart |
| Specialty Retailer | BestBuy, B&H Photo |
| Niche E‑Commerce | Shopify, WooCommerce |
| Direct‑to‑Consumer (DTC) | Warby Parker, Glossier |
| Marketplace Platform | Etsy, AliExpress |
| Specialized Electronics | Newegg, Micro Center |
| Global Marketplace | Alibaba, Rakuten |
| Others | (User‑provided) |
Usage – Choose the appropriate category when reviewing competitor lists; helps identify which market segment is being analyzed.
C5. Competitive Intelligence Best Practices
- Stay Current: Review competitor data at least quarterly or whenever a major competitor announcement occurs.
- Document Sources: Record the exact URL, the date accessed, and a snapshot (e.g., screenshot) for auditability.
- Cross‑Check: Verify price and feature information on at least two sources (e.g., product page and a reputable review site) when possible.
- Maintain Consistency: Use the same feature set across all product‑competitor comparisons to avoid misinterpretation.
- Record Assumptions: If a feature’s presence is inferred from a description (e.g., “has battery” versus “Battery Life: 10 hrs”), note that the data is inferred.
- Version Control: Keep a version number for the SOP and the input datasets (e.g., “v2025‑08‑01‑v1”).
C6. Sample Working Example (Full)
Input: (Provided in Section 9)
Output:
--- Feature Availability Grid – SuperWidget ---
Feature | ShopAlpha | ShopBeta
----------------------------------------
Battery Life | Yes | Yes
Color Options | No | Yes
Warranty | Yes | No
--- Feature Grid – MegaWidget ---
Feature | ShopAlpha | ShopBeta
----------------------------------------
Battery Life | Yes | Yes
Color Options | Yes | No
Warranty | No | Yes
--- Pricing Summary ---
Product Name | Competitor | Price | Currency | Date Captured
----------------------------------------------------------------
SuperWidget | ShopAlpha | $99.99 | USD | 2025-08-01
SuperWidget | ShopBeta | $95.00 | USD | 2025-08-01
MegaWidget | ShopAlpha | $149.99| USD | 2025-08-01
MegaWidget | ShopBeta | $145.00| USD | 2025-08-01
Interpretation – The grid shows that ShopBeta offers the “Color Options” feature for the “SuperWidget” but not for the “MegaWidget”. The pricing summary indicates that ShopBeta has a lower price for the “SuperWidget” but a slightly higher price for “MegaWidget” compared to ShopAlpha.
C7. Reference List: Prohibited Content
| Prohibited Item | Reason for Prohibition |
|---|
| Confidential customer data | Privacy compliance |
| Proprietary pricing algorithms | Intellectual property |
| Personal identifiers (e.g., social security numbers) | Data protection |
| Unverified claims (e.g., “best in the world”) | Accuracy, bias |
| Sensitive financial data (e.g., company profit) | Confidentiality |
| Personal email addresses | Privacy |
| ... | ... |
Note – The list above can be expanded as the business evolves. The SOP does not generate any prohibited items; it simply organizes data that is already approved for analysis.
Tips for Execution
- Pre‑check: Before running the process, quickly scan the inputs for obvious gaps (e.g., missing URLs, empty price column).
- Copy‑Paste: When copying data from source PDFs or webpages, preserve the exact spelling of product and feature names to avoid mismatches.
- Version Tag: Add a comment line at the top of the final output stating the date the SOP was applied (e.g., “Generated on 2025‑08‑11 – version 1.0”).
- Audit Trail: Keep the original input tables (or PDFs) in a shared folder for future reference, but the SOP output itself is a final deliverable.
.*