# How to convert a score like 18/20 to a percentage in Excel

Split the text at the slash and divide: `=TEXTBEFORE(B2,"/")/TEXTAFTER(B2,"/")`, formatted as a percentage.

**Excel:** `=TEXTBEFORE(B2,"/")/TEXTAFTER(B2,"/")` (Excel 2024 and Microsoft 365)

**Google Sheets:** `=INDEX(SPLIT(B2,"/"),1)/INDEX(SPLIT(B2,"/"),2)`

## Example

Sample data (row 1 is the header):

| A | B | C |
| --- | --- | --- |
| Student | Score | Percent |
| Ava | 18/20 |  |
| Ben | 42/50 |  |
| Chloe | 7/10 |  |
| Dan | 88/100 |  |
| Eve | 15/25 |  |

Formula in C2, filled to C6: `=TEXTBEFORE(B2,"/")/TEXTAFTER(B2,"/")`

Result: 90%; 84%; 70%; 88%; 60%

## How it works

The score is text, so it can't be divided directly. TEXTBEFORE returns the points before the slash and TEXTAFTER the points after it. Dividing them converts both to numbers: 18 / 20 = 90%.

In Google Sheets, SPLIT breaks the text at the slash and INDEX picks each part.

## Other ways

- `=LEFT(B2,FIND("/",B2)-1)/MID(B2,FIND("/",B2)+1,10)`: Works in every Excel version: FIND locates the slash, LEFT and MID take the parts.

## Common mistakes

- Typing 3/4 into a cell turns it into a date (March 4) in US settings. Format the column as Text first, or keep points and maximum in separate columns.
- Spaces around the slash ("18 / 20") are fine for the division, because Excel ignores spaces around a number in text.

## Questions

**How do I average the percentages?**

Average column C, or for a weighted result divide total points by total maximum points.

**How do I write the score as text from two numbers?**

Join them: `=B2&"/"&C2`.

Every formula and result on this page was checked by running it in the Spreadsheet Practice formula engine on 2026-10-30.

Source: https://spreadsheetpractice.com/formulas/convert-a-score-to-a-percentage
