SuperSheet

Excel vs Google Sheets: Formatting Differences

By Mark Fulton · 2026-09-08 · 10 min read

Excel vs Google Sheets: Formatting Differences

Custom number formats mostly survive a crossover, conditional formatting rarely survives intact in either direction, fonts substitute silently when the exact typeface isn't available on the other side, and print setup has to be rebuilt from scratch every time. Nothing about that is a bug in either product. Excel and Google Sheets store formatting differently, so a file that looks right in one can lose specific pieces the moment someone opens it in the other.

Most comparisons of these two tools stop at "which one should I use," which is a strange question to answer for someone who already has the file. You didn't choose Excel or Sheets this week. A client sent you an .xlsx, or your team lives in Sheets and finance wants a workbook, and now you need to know what breaks. That's a narrower, more useful question, and it has concrete answers.

Formatting feature parity, at a glance

Formatting feature In Excel In Sheets Excel file opened in Sheets Sheets file exported to Excel
Custom number formats Full format-code syntax Same underlying syntax Usually displays the same Usually displays the same
Fills, borders, bold/italic Standard Standard Carries over Carries over
Color-scale conditional formatting Two- and three-color scales Two- and three-color scales Rule converts Rule converts
Formula-based conditional formatting "Use a formula" rules "Custom formula is" rules Rule converts Rule converts
Data bars Built-in rule type No equivalent Dropped or flattened to a value N/A, can't be built in Sheets
Icon sets Built-in rule type No equivalent Dropped or flattened to a value N/A, can't be built in Sheets
Fonts Any installed or embedded font Google Fonts plus web-safe system fonts Non-matching fonts substitute Non-matching fonts substitute
Column widths Measured in characters Measured in pixels Approximate conversion Approximate conversion
Freeze panes Freeze rows/columns Freeze rows/columns Carries over Carries over
Print setup (margins, breaks, headers) Page Layout tab, stored with file File → Print, stored with file Not imported, set up again Not imported, set up again
Pivot table styling Named pivot styles Basic styling Often resets to default Often resets to default

What survives an .xlsx import into Google Sheets?

Open an Excel file in Google Sheets and the bones of it come across cleanly: cell values, formulas that use functions Sheets also supports, sheet tabs, basic fills and borders, bold and italic, and most custom number formats. A currency format, a percentage with two decimals, or a custom code like #,##0;(#,##0) for accounting-style negatives generally imports and displays the same way, because Sheets reads the same underlying format-code syntax Excel writes into the file.

What doesn't come across as cleanly:

  • Anything Sheets doesn't have a feature for. Data bars and icon sets in conditional formatting have no equivalent in Sheets, so those rules disappear or get flattened on import, covered in more detail below.
  • Pivot table formatting. The data structure usually survives; the specific style applied to it often resets to a Sheets default.
  • Fonts that aren't in the Google Fonts catalog or the small set of web-safe system fonts Sheets recognizes. A corporate brand font or a less common Windows font substitutes to something else.
  • Some advanced formulas. Dynamic-array functions and newer Excel-only functions can convert to static values or errors rather than live formulas, which is a calculation issue more than a formatting one, but it changes what the sheet looks like once someone edits it.

Google's own guidance on working across both tools acknowledges this is a live seam between the products rather than a solved problem, which is why the practical move is to treat the numbers and structure as portable and the presentation layer as something you check by eye after every crossover, not something you assume held.

What survives a Sheets export back to Excel?

The direction people check less often, because it feels like going back to the "real" format, is exactly where formatting quietly resets. Basic fills, borders, and text formatting round-trip fine. Conditional formatting rules built with Sheets' single-color and custom-formula options translate into equivalent Excel rules, since both products support formula-driven conditional formatting as common ground.

Two things reliably need a second look after exporting to .xlsx:

  • Print settings. Sheets stores margins, page breaks, and header/footer text as its own print configuration, set from File → Print rather than anything baked into the cell data. None of that maps to Excel's Page Layout settings on export, so the workbook opens in Excel with Excel's default print behavior.
  • Column widths and row heights. Sheets and Excel measure these in different units, so a width that looked correct in Sheets is frequently a little off in Excel, especially with wrapped text or merged cells in the mix.

If the file's whole reason for existing is to become an Excel file someone opens in Excel, exporting from Sheets and formatting there is one extra hop you don't need. It's faster to build the Sheets version for collaboration, then convert to .xlsx and apply formatting once, in the format the reader will actually see.

Which conditional formatting rules translate and which don't?

This is where the two products diverge the most, and it's worth knowing the actual feature gap rather than guessing at it after a rule goes missing.

Excel's conditional formatting includes data bars, color scales, and icon sets as distinct visual formats, alongside formula-driven rules. Google Sheets' conditional formatting rules cover single-color formatting with condition types like "text contains" or "less than," a color scale option, and custom-formula rules, but there is no equivalent to data bars or icon sets in the product.

That gap runs in one direction only:

  • A data bar or icon set built in Excel has nothing to convert to in Sheets. It either drops on import or the cell keeps its raw value with no visual treatment.
  • A color-scale or formula rule built in either product has a real equivalent on the other side, so those survive a crossover in both directions.
  • Sheets users who want an in-cell bar chart typically build one with the SPARKLINE function in a helper column instead, which is a formula living in a cell rather than a formatting rule attached to one, and it behaves differently when the sheet is sorted or filtered.

If a report has to look identical in both tools, the safe subset is fills, borders, text formatting, and formula-based conditional formatting. Anything Excel-only in the conditional formatting menu is a bet that only pays off if the file never leaves Excel.

Why do fonts and column widths shift?

Fonts substitute for a straightforward reason: Google Sheets renders text using its own font list, built from the Google Fonts library plus a short set of web-safe system fonts, and it doesn't support installing or uploading a font the way a desktop app can. Open an .xlsx file that uses a licensed or Windows-only typeface, and Sheets swaps in the nearest match it has, silently. The layout doesn't error out, it just renders in a different typeface, which is the kind of small change that's easy to miss until someone prints the file and the spacing looks off.

Column widths shift for a more mechanical reason. Excel measures column width in characters of the default font, and Sheets measures in pixels. A width that converts exactly for one font renders slightly narrow or wide for another, and the effect compounds with wrapped text, since a cell that wraps at one width may wrap differently at the converted width. None of this is a formatting rule failing to transfer. It's two different measurement systems being reconciled on the fly, and the reconciliation is approximate.

The practical fix is the same for both: stick to fonts that exist natively in both products, Arial and other web-safe system fonts being the safest choice, and check column widths visually after a crossover rather than trusting the converted numbers.

Which product handles print setup better?

Neither, because they don't share print settings at all. Each product treats print layout as configuration that lives with the file in that product, not as a portable attribute of the spreadsheet.

Google Sheets sets margins, page breaks, headers and footers, orientation, and paper size entirely from its own print dialog. Excel's page setup, covering the same categories plus scaling and print titles, lives in its own Page Layout tab. Import a file from either product into the other and none of that configuration carries over. What imports is the data and the cell-level formatting; the print layer has to be set up again, every time, in whichever product will do the actual printing.

That makes the practical answer a workflow decision rather than a feature comparison: figure out which product will print the file, and set up print margins, page breaks, and a repeating header row there, last, after the formatting is otherwise finished. Setting print layout early and then converting the file wastes the work.

How do you build a file meant to live in both?

Assume it will be opened in both and build to the shared subset from the start, rather than formatting once and hoping the conversion is clean.

  • Number formats: stick to standard formats, currency, percentage, date, and common custom codes. These are the most portable piece of formatting either product has.
  • Colors and text styling: fills, borders, bold, italic, and underline all survive a crossover reliably.
  • Fonts: pick something available natively in both, not a brand font that only exists on one side.
  • Conditional formatting: build with formula rules and single colors, and treat data bars and icon sets as Excel-only decoration you'd have to recreate if the file ever needs to open in Sheets.
  • Print setup: finish it last, and only in the product that will actually print the file, since it never travels with a conversion.
  • Freeze panes and a totals row: both products support freezing header rows and columns, and both handle a fixed totals row at the bottom of a table, so these are safe to build early.

If the honest answer is that the file only ever needs to be Excel, the fastest path is to skip the back-and-forth entirely: work in whatever format is convenient, then convert straight to a properly formatted .xlsx once, with number formats, a totals row, freeze panes, and a theme applied in the same pass, nothing uploaded in the process. That sidesteps every one of these translation problems, because there's only one export instead of a round trip.

Frequently asked questions

Does Google Sheets keep Excel formatting?

Mostly, for the common cases. Cell values, most custom number formats, fills, borders, and basic text formatting import cleanly. Excel-only conditional formatting types like data bars and icon sets have no equivalent in Sheets and don't survive, pivot table styling often resets, and print setup never carries over because it isn't stored as part of the shared file format in the same way.

Why do my colors change when I upload to Sheets?

Fills and font colors themselves usually import correctly. What changes more often is text color contrast after a font substitution, since a different typeface can render slightly differently at the same size and weight, and conditional formatting color scales can shift if the rule's minimum, midpoint, or maximum values were defined against a range that changed shape during import.

Do Excel custom number formats work in Google Sheets?

Generally yes. Standard custom format codes for currency, percentages, dates, and accounting-style negatives use the same underlying syntax in both products, so they typically display the same way after import. Very unusual or deeply nested custom codes are the exception worth spot-checking after a crossover.

Which is better for a file I'll email to clients?

Whichever one your client will actually open the file in. If it's going out as an .xlsx that a client will view in Excel, format it in Excel last, including print setup, since that's what determines how it looks and prints on their end. If they're collaborating with you live in a shared link, format in Sheets and skip the conversion step altogether. The mistake is formatting carefully in one product and then converting, which is exactly when print layout and Excel-only conditional formatting quietly reset.

Number formats and freeze panes are the two things worth getting right before a file crosses over, because they're the pieces most likely to hold. For the full set of number format codes and when to use each, see the number formatting guide. If conditional formatting is part of the plan, this breakdown of which rules pull their weight covers the same data-bars-versus-color-scales gap between the two products in more depth.


SuperSheet is a free set of spreadsheet formatting, CSV conversion, and cleanup tools. Your file never leaves the browser.