A browser-based number extractor pulls every numeric token out of a pasted block in one pass and returns either a clean list or a summary — count, sum, minimum, maximum and average — with each rule that defines a number switchable so the output matches your data, not the tool's guess. The grammar that decides what counts is explicit, pinned by more than twenty test cases written before the implementation.

Most pastes that need a number extractor look the same: invoices with totals and subtotals in running prose, server logs with timestamps and codes scattered around real values, survey free-text answers where respondents wrote numbers instead of picking a scale, and OCR output where digits are mixed with broken words. Pulling figures out of those by hand is slow, and a quick scan with find-and-replace only works when the surrounding text is consistent. A purpose-built extractor scans the entire paste, applies its number grammar, and returns only the digits so the question — what are the actual numbers here — gets answered with one paste and one click.

Extract Numbers from Text runs entirely in the browser, which is what "online" should mean for an extractor: the input is processed locally, nothing is uploaded to a server, nothing is stored against an account, and a one-million-character paste returns immediately because the scan is a single linear pass. Output can be one number per line, a comma-separated list for spreadsheets, or the statistics block when the question is the total rather than the contents.

extract numbers from text online
Extract Numbers From Text Online With Rule Switches

What "a number" means here, and what it deliberately excludes

The scope boundary matters more than the feature list. A number, by the grammar applied, is a run of ASCII digits with optional sign, optional decimal point, optional well-formed thousands grouping, and optional scientific-notation suffix behind its own toggle. Full-width digits and numerals from other scripts pass through unextracted, and the page says so rather than half-supporting them — that is the stated scope. Currency symbols, percent signs, brackets and surrounding words do not block the match, because the job is to find every digit, not to judge the context.

The sign rule is the easiest one to get wrong. A leading minus is kept only when it is genuinely attached to the number — at the start of a line, after whitespace, or after an opening bracket or comparison. That means the expression 5-3 yields five and three, not five and minus three. A leading plus is recognized when the rest of the grammar is satisfied. Bare decimals written without a leading zero (".5") are read as 0.5. Numbers embedded in other text are still extracted wherever they appear: item123 yields 123, $19.99 yields 19.99 and 50% yields 50.

RuleDefaultWhat it controls
Signs (minus, plus)OnKeeps the sign only when attached at line start, after whitespace, or after an opening bracket or comparison.
DecimalsOnRecognizes the decimal point and bare decimals such as .5 as 0.5.
Thousands separatorsOnTreats well-formed grouping (1,000,000) as one number; malformed grouping splits at the malformation.
Scientific notationOffRecognizes 1e5 and 1.5E-3 only when switched on; off by default because prose rarely means it.
DeduplicateOffCollapses repeated values while preserving first-seen order.

For a closer look at how each toggle changes the output, the guide on switchable rules for number extraction walks the same controls against paste samples so you can see the difference between on and off without guessing.

How to extract numbers from text online

The path from a pasted block to a clean list of numbers is short. The five steps below take you from input to a result you can copy, audit against expectation, and paste into a spreadsheet or report.

  1. Paste the text containing the numbers you want to extract. Drop the full paste into the input field. Up to one million characters is processed in a single linear pass, so even a long invoice or a full day's worth of log lines returns immediately.
  2. Adjust the rules to match what counts as a number in your data. Toggle signs, decimals, thousands separators and scientific notation on or off depending on the source. Turn dedupe on if the same figure appears repeatedly and you want unique values only.
  3. Choose list or statistics output. Pick one number per line or a comma-separated list when you want a list. Pick statistics when the question is the total, the range or the average.
  4. Check the found count. Every extraction reports how many numbers were found, so the output is auditable against your expectation before you copy it onward. An input with no recognizable numbers is reported as exactly that, not turned into a hard failure.
  5. Copy the result. Use the copy action to grab the list or the statistics block and paste it into a spreadsheet, a totals row, or the next step in your workflow.

Reading the statistics block honestly

Statistics — count, sum, minimum, maximum and average — are computed with ordinary JavaScript double-precision arithmetic. The count is always exact. The other four follow the precision of double-precision floats, which is exact for most decimal values used in real data and starts to show real-world residue at the far end of the precision range. Sums of clean decimals can carry the familiar floating-point residue that shows up when arithmetic is repeated, and the page states that limit rather than hiding it.

Worked example, fully written out. Paste contains 10, 20, 30, 40. The extractor returns count = 4, min = 10, max = 40, sum = 10 + 20 + 30 + 40 = 100, average = 100 / 4 = 25. Each of those is reproducible by hand from the same input, which is the audit trail the count is meant to give you. When a sum looks suspicious at the end of a long decimal chain, the count tells you how many numbers went into it; the deviation from your expectation then tells you whether the residue is in the data or in the precision.

The two limits that matter before you paste are the character cap and the digit scope. The cap is one million characters, processed in a single linear pass. The digit scope is ASCII only: full-width digits and numerals from other scripts are passed through unextracted. If the input uses non-ASCII digits and you need them read, that is a stated scope boundary rather than a bug to fix by trial and error.

Where this earns its keep

The pattern is the same every time: a block of text that is mostly not numbers, with the numbers scattered through it. A few common shapes:

  • Invoices and receipts. Pulled totals, subtotals, tax lines and per-item amounts need to land in a spreadsheet column; the extractor hands them back in source order, ready to paste into the totals row.
  • Server logs and request lines. Latencies, byte counts, status codes and response sizes live alongside timestamps and IP-shaped strings; the extractor returns every numeric token so you can sort and total them downstream.
  • Survey free text and form exports. When respondents write numbers instead of using a scale, the free-text column is a number soup the extractor flattens to a clean column.
  • Reports with figures in running prose. Quarterly or yearly write-ups mix percentages, dollar amounts and counts into paragraphs; the statistics block gives the total, range and average without rereading the prose.
SourceTypical noise around the numbersWhat to watch for
Invoices and receiptsCurrency symbols, line-item labels, datesCurrency symbols do not block matches; ensure the sign rule matches how negatives are written.
Server logsTimestamps, IPs, status codes, hex idsIP-shaped strings extract as numbers when their parts are pure digits; turn off decimals if every value is an integer count.
Survey free textWords, abbreviations, unitsNumbers embedded in words still extract; if "1st" should read as 1, the grammar already does that.
Report prosePercent signs, dollar signs, comparatorsComparator signs are part of the attachment rule, so a value after "≥" still extracts while the comparator stays where it was.

For a closer look at how the same tool behaves when the paste is a single column rather than a paragraph, the guide to extracting numbers from pasted text as list or statistics walks through the same output options against paste samples.

What it deliberately does not do

An extractor you can trust is one whose rules you can read. The tool does not interpret: no currency conversion, no unit awareness, no date parsing, no guessing about what a number means. It does not round the statistics to a friendlier precision for you, because that would hide the floating-point residue the page is honest about. It does not merge adjacent runs of digits into one number when the grammar says they are separated. Every output comes with a count, and an input with no recognizable numbers is reported as exactly that rather than treated as an error — the absence of numbers is information too.