Python Pareto charts vs browser 80/20 calculators
Use Python when the analysis must be repeatable or customized; use a browser calculator when the goal is a fast, checked first pass on a small dataset.
Aggregate won-deal revenue by account before ParetoScope analysis to see which customers drive the largest share of sales.
Sales operations teams often have deal-level exports but need an account-level answer: which customers account for the largest share of won revenue? A HubSpot deal export can provide the source records. The important step is to aggregate those records by account before analyzing concentration. Otherwise, a large customer with several deals appears as several separate categories.
This workflow combines a CRM export, a spreadsheet for cleanup and aggregation, and ParetoScope for ranking and cumulative concentration. It avoids building a complex pivot-table report when the immediate need is a checked first pass. It does not replace a revenue model or a careful definition of the sales period.
Choose the population you want to rank. For a sales revenue concentration view, that usually means closed-won deals within a stated period, but the right scope depends on the question. A quarterly review should not quietly include deals from other quarters. A bookings analysis should not mix in pipeline amounts. Decide whether amendments, renewals, refunds or credits belong in the measure.
Set a consistent currency basis as well. If the export contains more than one currency, convert values using the same policy before adding them together. Otherwise, an account ranking can reflect currency units rather than relative revenue.
Export the deal records needed for that scope from HubSpot. Include a deal identifier, deal amount, close date, deal status and a field that identifies the associated account or company. Field names and export options can vary with a portal’s setup, so confirm that the chosen account field is populated and refers to the customer you intend to rank.
Keep the raw export unchanged as a source file. In a working copy, remove records outside the chosen status and date range, inspect blank amounts, and check for duplicate deal records. Do not treat a missing account as a separate customer category without investigating it. Several missing associations can distort the long tail or hide revenue that needs correction in the CRM.
Use a spreadsheet to group the eligible deals by account and sum deal amount for each account. The analysis table should have two clear columns: Account and Won revenue. Each account should appear once. Rename headers plainly, remove subtotal and total rows, and ensure the revenue column contains numeric values rather than formatted text.
This aggregation is the point that makes the analysis an account ranking instead of a deal ranking. Check the sum of the account totals against the sum of the eligible deal amounts in the working export. If they differ, look for excluded rows, missing associations, duplicate deals or inconsistent currency treatment before continuing.
Be explicit about account identity. Parent companies and subsidiaries may appear separately in the CRM. If leadership wants a parent-level view, map subsidiaries consistently before summing. If the commercial team manages them independently, preserve them as separate categories. Pareto analysis cannot decide which account hierarchy is meaningful.
Upload the cleaned CSV to ParetoScope, paste the two-column table from a spreadsheet, or enter the rows manually. ParetoScope calculates ranking, cumulative percentages, concentration and the vital-few cut-off. It also generates key insights and recommended actions derived directly from the numbers.
Read the concentration result as a description of this dataset, not as a universal rule. If a small set of accounts contributes most of the revenue, those accounts merit attention in planning. If contribution is spread across more accounts, a strict 80% target may create an arbitrary boundary. The useful question is how concentrated this particular book is and what decisions depend on it.
The free calculations run locally in the browser without requiring an account. That makes the tool suitable for a first pass on a prepared export, but it does not validate the source records or determine whether the chosen period answers the business question. The guidance in starting local CSV analysis with a checked spreadsheet export applies here: processing location and data quality are separate concerns.
Use the ranked accounts to frame a specific follow-up. For example, compare the leading accounts’ revenue share with renewal exposure, service workload or sales coverage, if those measures are available and relevant. ParetoScope’s output can identify where revenue is concentrated; the CRM export alone does not explain why, whether the pattern is healthy, or what will happen next.
Keep the analysis tied to its assumptions. Save the source export and the aggregation method, record the reporting period and currency policy, and rerun the same steps when comparing periods. If the account mapping or deal scope changes, note that before interpreting movement in the concentration curve.
This is a fast account-ranking workflow, not a substitute for repeatable reporting pipelines, custom segmentation or forecasting. Spreadsheet aggregation adds a manual check and can become fragile when exports grow or rules multiply. For a one-off sales ops question, though, a clean two-column account table is often enough to move from raw CRM rows to a defensible view of sales revenue concentration.
Use Python when the analysis must be repeatable or customized; use a browser calculator when the goal is a fast, checked first pass on a small dataset.
Aggregate event logs into feature-level drop-off counts, then use ParetoScope to see which categories account for the largest share of exits.
Export product sales, rank revenue by reorderable SKU in ParetoScope, then use the concentration curve as a replenishment signal—not a reorder formula.