Skip to content

Latest commit

 

History

History
707 lines (611 loc) · 77.5 KB

File metadata and controls

707 lines (611 loc) · 77.5 KB

ExcelBench Performance Results

Generated: 2026-02-16T23:15:20.993545+00:00 Profile: xlsx Platform: Darwin-arm64 Python: 3.12.3 Commit: f7a64e0 Config: warmup=3 iters=25 iteration_policy=fixed breakdown=True

Notes

These numbers measure only the library under test. Write timings do NOT include oracle verification.

Summary (p50 wall time)

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms)
cell_values 0.21
formulas 0.16
multiple_sheets 0.06

Tier 1 — Formatting

Feature calamine-styled (R p50 ms)
alignment 0.09
background_colors 0.08
borders 0.36
dimensions 0.08
number_formats 0.09
text_formatting 0.15

Tier 2 — Advanced

Feature calamine-styled (R p50 ms)
comments 0.21
conditional_formatting 0.21
data_validation 0.15
freeze_panes 0.22
hyperlinks 0.22
images 0.05
merged_cells 0.20
named_ranges 0.05
pivot_tables 0.05
tables 0.05

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms)
cell_values 0.21 1.23 1.32
formulas 0.16 1.16 1.47
multiple_sheets 0.06 1.25 1.84

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms)
alignment 0.09 1.19 1.45
background_colors 0.08 1.01 1.33
borders 0.36 1.70 2.62
dimensions 0.08 0.94 1.22
number_formats 0.09 1.03 1.30
text_formatting 0.15 1.66 1.73

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms)
comments 0.21 1.10 1.42
conditional_formatting 0.21 1.37 1.74
data_validation 0.15 1.24 1.30
freeze_panes 0.22 1.33 1.98
hyperlinks 0.22 1.16 1.28
images 0.05 1.16 1.69
merged_cells 0.20 1.23 1.42
named_ranges 0.05 1.07 1.42
pivot_tables 0.05 0.85 1.18
tables 0.05 1.39 1.18

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms)
cell_values 0.21 1.23 1.32 4.69
formulas 0.16 1.16 1.47 1.37
multiple_sheets 0.06 1.25 1.84 0.96

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms)
alignment 0.09 1.19 1.45 0.93
background_colors 0.08 1.01 1.33 0.87
borders 0.36 1.70 2.62 1.27
dimensions 0.08 0.94 1.22 0.80
number_formats 0.09 1.03 1.30 0.87
text_formatting 0.15 1.66 1.73 1.37

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms)
comments 0.21 1.10 1.42 0.84
conditional_formatting 0.21 1.37 1.74 0.92
data_validation 0.15 1.24 1.30 0.86
freeze_panes 0.22 1.33 1.98 0.96
hyperlinks 0.22 1.16 1.28 0.88
images 0.05 1.16 1.69 0.79
merged_cells 0.20 1.23 1.42 0.87
named_ranges 0.05 1.07 1.42 0.84
pivot_tables 0.05 0.85 1.18 0.75
tables 0.05 1.39 1.18 0.86

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52
formulas 0.16 1.16 1.47 1.37 1.47 1.78
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43
background_colors 0.08 1.01 1.33 0.87 1.20 1.37
borders 0.36 1.70 2.62 1.27 2.09 1.76
dimensions 0.08 0.94 1.22 0.80 1.15 1.23
number_formats 0.09 1.03 1.30 0.87 1.19 1.42
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51
data_validation 0.15 1.24 1.30 0.86 1.57 1.25
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21
images 0.05 1.16 1.69 0.79 1.11 1.24
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25
tables 0.05 1.39 1.18 0.86 1.50 1.24

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36 0.88
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28 0.16
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34 0.06

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32 0.05
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30 0.06
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49 0.07
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24 0.06
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29 0.06
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43 0.08

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24 0.06
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23 0.05
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24 0.05
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30 0.05
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26 0.05
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22 0.05
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28 0.06
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25 0.05
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26 0.05
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27 0.06

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36 0.88 0.35
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28 0.16 0.32
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34 0.06 0.37

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32 0.05 0.36
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30 0.06 0.29
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49 0.07 0.47
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24 0.06 0.28
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29 0.06 0.31
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43 0.08 0.40

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24 0.06 0.41
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23 0.05 0.35
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24 0.05 0.26
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30 0.05 0.98
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26 0.05 0.32
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22 0.05 0.29
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28 0.06 0.30
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25 0.05 0.33
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26 0.05 0.25
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27 0.06 0.26

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36 0.88 0.35 1.77 2.03
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28 0.16 0.32 1.13 1.50
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34 0.06 0.37 1.26 1.82

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32 0.05 0.36 1.17 1.25
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30 0.06 0.29 0.98 1.21
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49 0.07 0.47 1.68 1.40
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24 0.06 0.28 0.95 1.17
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29 0.06 0.31 1.01 1.24
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43 0.08 0.40 1.63 1.37

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24 0.06 0.41 0.95 1.15
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23 0.05 0.35 1.32 1.44
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24 0.05 0.26 1.21 1.15
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30 0.05 0.98 1.31 2.04
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26 0.05 0.32 1.16 1.18
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22 0.05 0.29 0.94 1.15
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28 0.06 0.30 1.01 1.22
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25 0.05 0.33 1.09 1.42
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26 0.05 0.25 0.86 1.19
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27 0.06 0.26 1.25 1.16

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36 0.88 0.35 1.77 2.03 0.21 0.36
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28 0.16 0.32 1.13 1.50 0.16 0.34
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34 0.06 0.37 1.26 1.82 0.06 0.36

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32 0.05 0.36 1.17 1.25 0.09 0.34
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30 0.06 0.29 0.98 1.21 0.08 0.28
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49 0.07 0.47 1.68 1.40 0.36 0.46
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24 0.06 0.28 0.95 1.17 0.07 0.28
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29 0.06 0.31 1.01 1.24 0.08 0.28
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43 0.08 0.40 1.63 1.37 0.13 0.38

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24 0.06 0.41 0.95 1.15 0.20 0.36
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23 0.05 0.35 1.32 1.44 0.21 0.33
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24 0.05 0.26 1.21 1.15 0.15 0.27
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30 0.05 0.98 1.31 2.04 0.21 0.97
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26 0.05 0.32 1.16 1.18 0.22 0.30
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22 0.05 0.29 0.94 1.15 0.06 0.27
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28 0.06 0.30 1.01 1.22 0.18 0.28
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25 0.05 0.33 1.09 1.42 0.05 0.31
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26 0.05 0.25 0.86 1.19 0.05 0.24
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27 0.06 0.26 1.25 1.16 0.06 0.27

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36 0.88 0.35 1.77 2.03 0.21 0.36
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28 0.16 0.32 1.13 1.50 0.16 0.34
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34 0.06 0.37 1.26 1.82 0.06 0.36

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32 0.05 0.36 1.17 1.25 0.09 0.34
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30 0.06 0.29 0.98 1.21 0.08 0.28
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49 0.07 0.47 1.68 1.40 0.36 0.46
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24 0.06 0.28 0.95 1.17 0.07 0.28
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29 0.06 0.31 1.01 1.24 0.08 0.28
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43 0.08 0.40 1.63 1.37 0.13 0.38

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24 0.06 0.41 0.95 1.15 0.20 0.36
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23 0.05 0.35 1.32 1.44 0.21 0.33
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24 0.05 0.26 1.21 1.15 0.15 0.27
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30 0.05 0.98 1.31 2.04 0.21 0.97
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26 0.05 0.32 1.16 1.18 0.22 0.30
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22 0.05 0.29 0.94 1.15 0.06 0.27
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28 0.06 0.30 1.01 1.22 0.18 0.28
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25 0.05 0.33 1.09 1.42 0.05 0.31
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26 0.05 0.25 0.86 1.19 0.05 0.24
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27 0.06 0.26 1.25 1.16 0.06 0.27

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36 0.88 0.35 1.77 2.03 0.21 0.36 1.77
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28 0.16 0.32 1.13 1.50 0.16 0.34 1.83
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34 0.06 0.37 1.26 1.82 0.06 0.36 2.15

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32 0.05 0.36 1.17 1.25 0.09 0.34 1.80
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30 0.06 0.29 0.98 1.21 0.08 0.28 1.93
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49 0.07 0.47 1.68 1.40 0.36 0.46 2.62
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24 0.06 0.28 0.95 1.17 0.07 0.28 1.52
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29 0.06 0.31 1.01 1.24 0.08 0.28 1.61
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43 0.08 0.40 1.63 1.37 0.13 0.38 2.00

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24 0.06 0.41 0.95 1.15 0.20 0.36 2.02
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23 0.05 0.35 1.32 1.44 0.21 0.33 1.75
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24 0.05 0.26 1.21 1.15 0.15 0.27 1.55
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30 0.05 0.98 1.31 2.04 0.21 0.97 2.02
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26 0.05 0.32 1.16 1.18 0.22 0.30 1.79
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22 0.05 0.29 0.94 1.15 0.06 0.27 2.47
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28 0.06 0.30 1.01 1.22 0.18 0.28 1.68
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25 0.05 0.33 1.09 1.42 0.05 0.31 1.67
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26 0.05 0.25 0.86 1.19 0.05 0.24 1.67
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27 0.06 0.26 1.25 1.16 0.06 0.27 1.53

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms) xlsxwriter-constmem (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36 0.88 0.35 1.77 2.03 0.21 0.36 1.77 1.82
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28 0.16 0.32 1.13 1.50 0.16 0.34 1.83 2.20
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34 0.06 0.37 1.26 1.82 0.06 0.36 2.15 2.73

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms) xlsxwriter-constmem (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32 0.05 0.36 1.17 1.25 0.09 0.34 1.80 1.76
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30 0.06 0.29 0.98 1.21 0.08 0.28 1.93 1.69
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49 0.07 0.47 1.68 1.40 0.36 0.46 2.62 2.72
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24 0.06 0.28 0.95 1.17 0.07 0.28 1.52 1.71
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29 0.06 0.31 1.01 1.24 0.08 0.28 1.61 1.72
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43 0.08 0.40 1.63 1.37 0.13 0.38 2.00 2.11

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms) xlsxwriter-constmem (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24 0.06 0.41 0.95 1.15 0.20 0.36 2.02 1.78
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23 0.05 0.35 1.32 1.44 0.21 0.33 1.75 1.87
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24 0.05 0.26 1.21 1.15 0.15 0.27 1.55 1.58
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30 0.05 0.98 1.31 2.04 0.21 0.97 2.02 2.41
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26 0.05 0.32 1.16 1.18 0.22 0.30 1.79 1.75
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22 0.05 0.29 0.94 1.15 0.06 0.27 2.47 1.50
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28 0.06 0.30 1.01 1.22 0.18 0.28 1.68 1.66
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25 0.05 0.33 1.09 1.42 0.05 0.31 1.67 1.84
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26 0.05 0.25 0.86 1.19 0.05 0.24 1.67 1.64
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27 0.06 0.26 1.25 1.16 0.06 0.27 1.53 1.54

Tier 0 — Basic Values

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms) xlsxwriter-constmem (W p50 ms) xlwt (W p50 ms)
cell_values 0.21 1.23 1.32 4.69 1.59 1.52 0.35 1.36 1.33 1.32 0.36 0.88 0.35 1.77 2.03 0.21 0.36 1.77 1.82 0.24
formulas 0.16 1.16 1.47 1.37 1.47 1.78 0.39 1.22 1.59 1.15 0.28 0.16 0.32 1.13 1.50 0.16 0.34 1.83 2.20 0.27
multiple_sheets 0.06 1.25 1.84 0.96 1.68 2.16 0.51 1.36 1.87 1.31 0.34 0.06 0.37 1.26 1.82 0.06 0.36 2.15 2.73 0.17

Tier 1 — Formatting

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms) xlsxwriter-constmem (W p50 ms) xlwt (W p50 ms)
alignment 0.09 1.19 1.45 0.93 1.34 1.43 0.25 1.24 1.26 0.32 0.05 0.36 1.17 1.25 0.09 0.34 1.80 1.76 0.24
background_colors 0.08 1.01 1.33 0.87 1.20 1.37 0.23 1.05 1.19 0.96 0.30 0.06 0.29 0.98 1.21 0.08 0.28 1.93 1.69 0.19
borders 0.36 1.70 2.62 1.27 2.09 1.76 0.24 1.89 1.47 0.49 0.07 0.47 1.68 1.40 0.36 0.46 2.62 2.72 0.45
dimensions 0.08 0.94 1.22 0.80 1.15 1.23 0.30 1.01 1.19 0.91 0.24 0.06 0.28 0.95 1.17 0.07 0.28 1.52 1.71 0.13
number_formats 0.09 1.03 1.30 0.87 1.19 1.42 0.24 1.10 1.24 0.98 0.29 0.06 0.31 1.01 1.24 0.08 0.28 1.61 1.72 0.19
text_formatting 0.15 1.66 1.73 1.37 1.83 1.52 0.28 1.70 1.34 1.48 0.43 0.08 0.40 1.63 1.37 0.13 0.38 2.00 2.11 0.33

Tier 2 — Advanced

Feature calamine-styled (R p50 ms) openpyxl (R p50 ms) openpyxl (W p50 ms) openpyxl-readonly (R p50 ms) pandas (R p50 ms) pandas (W p50 ms) polars (R p50 ms) pyexcel (R p50 ms) pyexcel (W p50 ms) pylightxl (R p50 ms) pylightxl (W p50 ms) python-calamine (R p50 ms) rust_xlsxwriter (W p50 ms) tablib (R p50 ms) tablib (W p50 ms) wolfxl (R p50 ms) wolfxl (W p50 ms) xlrd (R p50 ms) xlsxwriter (W p50 ms) xlsxwriter-constmem (W p50 ms) xlwt (W p50 ms)
comments 0.21 1.10 1.42 0.84 1.17 1.24 0.23 1.18 1.17 1.14 0.24 0.06 0.41 0.95 1.15 0.20 0.36 2.02 1.78 0.12
conditional_formatting 0.21 1.37 1.74 0.92 1.60 1.51 0.37 1.41 1.46 0.23 0.05 0.35 1.32 1.44 0.21 0.33 1.75 1.87 0.15
data_validation 0.15 1.24 1.30 0.86 1.57 1.25 0.44 1.30 1.17 0.24 0.05 0.26 1.21 1.15 0.15 0.27 1.55 1.58 0.13
freeze_panes 0.22 1.33 1.98 0.96 1.68 2.09 0.47 1.45 2.03 0.30 0.05 0.98 1.31 2.04 0.21 0.97 2.02 2.41 0.18
hyperlinks 0.22 1.16 1.28 0.88 1.45 1.21 0.36 1.27 1.19 0.26 0.05 0.32 1.16 1.18 0.22 0.30 1.79 1.75 0.12
images 0.05 1.16 1.69 0.79 1.11 1.24 0.23 1.21 1.18 0.22 0.05 0.29 0.94 1.15 0.06 0.27 2.47 1.50 0.12
merged_cells 0.20 1.23 1.42 0.87 1.20 1.42 0.23 1.29 1.22 0.99 0.28 0.06 0.30 1.01 1.22 0.18 0.28 1.68 1.66 0.19
named_ranges 0.05 1.07 1.42 0.84 1.37 1.53 0.43 1.19 1.44 0.25 0.05 0.33 1.09 1.42 0.05 0.31 1.67 1.84 0.14
pivot_tables 0.05 0.85 1.18 0.75 1.03 1.25 0.25 0.91 1.17 0.82 0.26 0.05 0.25 0.86 1.19 0.05 0.24 1.67 1.64 0.12
tables 0.05 1.39 1.18 0.86 1.50 1.24 0.34 1.74 1.16 0.27 0.06 0.26 1.25 1.16 0.06 0.27 1.53 1.54 0.13

Run Issues

  • alignment / calamine-styled: Write unsupported
  • alignment / openpyxl-readonly: Write unsupported
  • alignment / polars: Write unsupported
  • alignment / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • alignment / python-calamine: Write unsupported
  • alignment / rust_xlsxwriter: Read unsupported
  • alignment / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • alignment / xlsxwriter-constmem: Read unsupported
  • alignment / xlsxwriter: Read unsupported
  • alignment / xlwt: Read unsupported
  • background_colors / calamine-styled: Write unsupported
  • background_colors / openpyxl-readonly: Write unsupported
  • background_colors / polars: Write unsupported
  • background_colors / python-calamine: Write unsupported
  • background_colors / rust_xlsxwriter: Read unsupported
  • background_colors / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • background_colors / xlsxwriter-constmem: Read unsupported
  • background_colors / xlsxwriter: Read unsupported
  • background_colors / xlwt: Read unsupported
  • borders / calamine-styled: Write unsupported
  • borders / openpyxl-readonly: Write unsupported
  • borders / polars: Write unsupported
  • borders / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • borders / python-calamine: Write unsupported
  • borders / rust_xlsxwriter: Read unsupported
  • borders / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • borders / xlsxwriter-constmem: Read unsupported
  • borders / xlsxwriter: Read unsupported
  • borders / xlwt: Read unsupported
  • cell_values / calamine-styled: Write unsupported
  • cell_values / openpyxl-readonly: Write unsupported
  • cell_values / polars: Write unsupported
  • cell_values / python-calamine: Write unsupported
  • cell_values / rust_xlsxwriter: Read unsupported
  • cell_values / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • cell_values / xlsxwriter-constmem: Read unsupported
  • cell_values / xlsxwriter: Read unsupported
  • cell_values / xlwt: Read unsupported
  • comments / calamine-styled: Write unsupported
  • comments / openpyxl-readonly: Write unsupported
  • comments / polars: Write unsupported
  • comments / python-calamine: Write unsupported
  • comments / rust_xlsxwriter: Read unsupported
  • comments / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • comments / xlsxwriter-constmem: Read unsupported
  • comments / xlsxwriter: Read unsupported
  • comments / xlwt: Read unsupported
  • conditional_formatting / calamine-styled: Write unsupported
  • conditional_formatting / openpyxl-readonly: Write unsupported
  • conditional_formatting / polars: Write unsupported
  • conditional_formatting / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • conditional_formatting / python-calamine: Write unsupported
  • conditional_formatting / rust_xlsxwriter: Read unsupported
  • conditional_formatting / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • conditional_formatting / xlsxwriter-constmem: Read unsupported
  • conditional_formatting / xlsxwriter: Read unsupported
  • conditional_formatting / xlwt: Read unsupported
  • data_validation / calamine-styled: Write unsupported
  • data_validation / openpyxl-readonly: Write unsupported
  • data_validation / polars: Write unsupported
  • data_validation / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • data_validation / python-calamine: Write unsupported
  • data_validation / rust_xlsxwriter: Read unsupported
  • data_validation / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • data_validation / xlsxwriter-constmem: Read unsupported
  • data_validation / xlsxwriter: Read unsupported
  • data_validation / xlwt: Read unsupported
  • dimensions / calamine-styled: Write unsupported
  • dimensions / openpyxl-readonly: Write unsupported
  • dimensions / polars: Write unsupported
  • dimensions / python-calamine: Write unsupported
  • dimensions / rust_xlsxwriter: Read unsupported
  • dimensions / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • dimensions / xlsxwriter-constmem: Read unsupported
  • dimensions / xlsxwriter: Read unsupported
  • dimensions / xlwt: Read unsupported
  • formulas / calamine-styled: Write unsupported
  • formulas / openpyxl-readonly: Write unsupported
  • formulas / polars: Write unsupported
  • formulas / python-calamine: Write unsupported
  • formulas / rust_xlsxwriter: Read unsupported
  • formulas / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • formulas / xlsxwriter-constmem: Read unsupported
  • formulas / xlsxwriter: Read unsupported
  • formulas / xlwt: Read unsupported
  • freeze_panes / calamine-styled: Write unsupported
  • freeze_panes / openpyxl-readonly: Write unsupported
  • freeze_panes / polars: Write unsupported
  • freeze_panes / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • freeze_panes / python-calamine: Write unsupported
  • freeze_panes / rust_xlsxwriter: Read unsupported
  • freeze_panes / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • freeze_panes / xlsxwriter-constmem: Read unsupported
  • freeze_panes / xlsxwriter: Read unsupported
  • freeze_panes / xlwt: Read unsupported
  • hyperlinks / calamine-styled: Write unsupported
  • hyperlinks / openpyxl-readonly: Write unsupported
  • hyperlinks / polars: Write unsupported
  • hyperlinks / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • hyperlinks / python-calamine: Write unsupported
  • hyperlinks / rust_xlsxwriter: Read unsupported
  • hyperlinks / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • hyperlinks / xlsxwriter-constmem: Read unsupported
  • hyperlinks / xlsxwriter: Read unsupported
  • hyperlinks / xlwt: Read unsupported
  • images / calamine-styled: Write unsupported
  • images / openpyxl-readonly: Write unsupported
  • images / polars: Write unsupported
  • images / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • images / python-calamine: Write unsupported
  • images / rust_xlsxwriter: Read unsupported
  • images / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • images / xlsxwriter-constmem: Read unsupported
  • images / xlsxwriter: Read unsupported
  • images / xlwt: Read unsupported
  • merged_cells / calamine-styled: Write unsupported
  • merged_cells / openpyxl-readonly: Write unsupported
  • merged_cells / polars: Write unsupported
  • merged_cells / python-calamine: Write unsupported
  • merged_cells / rust_xlsxwriter: Read unsupported
  • merged_cells / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • merged_cells / xlsxwriter-constmem: Read unsupported
  • merged_cells / xlsxwriter: Read unsupported
  • merged_cells / xlwt: Read unsupported
  • multiple_sheets / calamine-styled: Write unsupported
  • multiple_sheets / openpyxl-readonly: Write unsupported
  • multiple_sheets / polars: Write unsupported
  • multiple_sheets / python-calamine: Write unsupported
  • multiple_sheets / rust_xlsxwriter: Read unsupported
  • multiple_sheets / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • multiple_sheets / xlsxwriter-constmem: Read unsupported
  • multiple_sheets / xlsxwriter: Read unsupported
  • multiple_sheets / xlwt: Read unsupported
  • named_ranges / calamine-styled: Write unsupported
  • named_ranges / openpyxl-readonly: Write unsupported
  • named_ranges / polars: Write unsupported
  • named_ranges / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • named_ranges / python-calamine: Write unsupported
  • named_ranges / rust_xlsxwriter: Read unsupported
  • named_ranges / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • named_ranges / xlsxwriter-constmem: Read unsupported
  • named_ranges / xlsxwriter: Read unsupported
  • named_ranges / xlwt: Read unsupported
  • number_formats / calamine-styled: Write unsupported
  • number_formats / openpyxl-readonly: Write unsupported
  • number_formats / polars: Write unsupported
  • number_formats / python-calamine: Write unsupported
  • number_formats / rust_xlsxwriter: Read unsupported
  • number_formats / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • number_formats / xlsxwriter-constmem: Read unsupported
  • number_formats / xlsxwriter: Read unsupported
  • number_formats / xlwt: Read unsupported
  • pivot_tables / calamine-styled: Write unsupported
  • pivot_tables / openpyxl-readonly: Write unsupported
  • pivot_tables / polars: Write unsupported
  • pivot_tables / python-calamine: Write unsupported
  • pivot_tables / rust_xlsxwriter: Read unsupported
  • pivot_tables / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • pivot_tables / xlsxwriter-constmem: Read unsupported
  • pivot_tables / xlsxwriter: Read unsupported
  • pivot_tables / xlwt: Read unsupported
  • tables / calamine-styled: Write unsupported
  • tables / openpyxl-readonly: Write unsupported
  • tables / polars: Write unsupported
  • tables / pylightxl: Read failed: TypeError: expected string or bytes-like object, got 'NoneType'
  • tables / python-calamine: Write unsupported
  • tables / rust_xlsxwriter: Read unsupported
  • tables / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • tables / xlsxwriter-constmem: Read unsupported
  • tables / xlsxwriter: Read unsupported
  • tables / xlwt: Read unsupported
  • text_formatting / calamine-styled: Write unsupported
  • text_formatting / openpyxl-readonly: Write unsupported
  • text_formatting / polars: Write unsupported
  • text_formatting / python-calamine: Write unsupported
  • text_formatting / rust_xlsxwriter: Read unsupported
  • text_formatting / xlrd: Write unsupported; Read not applicable: xlrd does not support .xlsx input
  • text_formatting / xlsxwriter-constmem: Read unsupported
  • text_formatting / xlsxwriter: Read unsupported
  • text_formatting / xlwt: Read unsupported