R Observatory
Search
install.packages("gt")
CRAN 30-day downloads, method
124K+6.3% up on the 30 days before, the better direction
Dependent packages, method
90160 more suggest it
Test coverage, method
27%of lines run by tests

Build display tables from tabular data with an easy-to-use set of functions. With its progressive approach, we can construct display tables with a cohesive set of table parts. Table values can be formatted using any of the included formatting functions.

Full description

Build display tables from tabular data with an easy-to-use set of functions. With its progressive approach, we can construct display tables with a cohesive set of table parts. Table values can be formatted using any of the included formatting functions. Footnotes and cell styles can be precisely added through a location targeting system. The way in which 'gt' handles things for you means that you don't often have to worry about the fine details.

Maintainer
Richard Iannone
Latest release
15 Oct 2026
First release
31 Mar 2020

Compare with another package

More details
Releases
20
Needs compilation
No
Needs R
>= 4.1.0
Config/Needs/coverage
officer
Config/Needs/website
quarto
Config/roxygen2/version
8.0.0
Config/testthat/edition
3
Config/testthat/parallel
true
LazyData
true
RoxygenNote
7.3.3
Task views (1)
Subjects (1) Method, Subjects
Cite

Package

Run in R for the authors' preferred citation:

citation("gt")
APA
Iannone, R., Posit Software, PBC, Brevoort, K., Cheng, J., François, R., Haughton, S., Hughes, E., Lauer, A., Roy, O., Schloerke, B., & Seo, J. (2026). gt: Easily Create Presentation-Ready Display Tables (Version 1.4.0) [Computer software]. https://doi.org/10.32614/CRAN.package.gt
About

This package has no citation file, so citation() returns this entry built from DESCRIPTION.

The repository also keeps a CITATION.cff.

R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA
Balamuta, J. J. (2026). R Observatory: Metrics for gt version 1.4.0 [Data set]. HJJB, LLC. Data release v2026-10-28. https://doi.org/10.5281/zenodo.21843040
About

From data release v2026-10-28, which the citation names so these numbers can be found later.

All 13 check platforms pass.

  • r-devel-linux-x86_64-debian-clang

    The unreleased R on Linux, x86_64, debian-clang

    OK

    Version checked
    1.4.0
    Time taken
    348 s
  • r-devel-linux-x86_64-debian-gcc

    The unreleased R on Linux, x86_64, debian-gcc

    OK

    Version checked
    1.4.0
    Time taken
    232 s
  • r-devel-linux-x86_64-fedora-clang

    The unreleased R on Linux, x86_64, fedora-clang

    OK

    Version checked
    1.4.0
    Time taken
    232 s
  • r-devel-linux-x86_64-fedora-gcc

    The unreleased R on Linux, x86_64, fedora-gcc

    OK

    Version checked
    1.4.0
    Time taken
    209 s
  • r-devel-windows-x86_64

    The unreleased R on Windows, x86_64

    OK

    Version checked
    1.4.0
    Time taken
    344 s
  • r-oldrel-macos-arm64

    The previous release of R on macOS, arm64

    OK

    Version checked
    1.4.0
    Time taken
    73 s
  • r-oldrel-macos-x86_64

    The previous release of R on macOS, x86_64

    OK

    Version checked
    1.4.0
    Time taken
    341 s
  • r-oldrel-windows-x86_64

    The previous release of R on Windows, x86_64

    OK

    Version checked
    1.4.0
    Time taken
    438 s
  • r-patched-linux-x86_64

    The patched release of R on Linux, x86_64

    OK

    Version checked
    1.4.0
    Time taken
    365 s
  • r-release-linux-x86_64

    The current release of R on Linux, x86_64

    OK

    Version checked
    1.4.0
    Time taken
    342 s
  • r-release-macos-arm64

    The current release of R on macOS, arm64

    OK

    Version checked
    1.4.0
    Time taken
    62 s
  • r-release-macos-x86_64

    The current release of R on macOS, x86_64

    OK

    Version checked
    1.4.0
    Time taken
    324 s
  • r-release-windows-x86_64

    The current release of R on Windows, x86_64

    OK

    Version checked
    1.4.0
    Time taken
    392 s
  • 13 OK

Over time

No change since 5 Aug 2026

As a list (8)
ChangedWorst statusOKNotesWarningsErrors
5 Aug 2026OK13000
1 Aug 2026Note12100
21 May 2026OK13000
20 May 2026Error12001
25 Apr 2026OK12000
13 Apr 2026Note11300
30 Mar 2026Error10301
10 Mar 2026Note11300

Since March 2026

Check results on CRAN

Total downloads in the last 30 days
130,771+7.5% up on the 30 days before, the better directionIt is the sum of 5 channels: CRAN, r2u, autoCRAN, conda-forge and c2d4u.

CRAN rank

298 of 26,530

CRAN

124,390 downloads in the last 30 days

Rank
298 of 26,530
Change
+6.3% up on the 30 days before, the better direction

It is in the total. Take it out

r2u

1,826 downloads in the last 30 days

Rank
642 of 30,526
Change
+62.6% up on the 30 days before, the better direction

It is in the total. Take it out

autoCRAN

8 downloads in the last 30 days

Rank
5,494 of 29,212
Change
−50% down on the 30 days before, the worse direction

It is in the total. Take it out

conda-forge

4,477 downloads in the last 30 days

Rank
490 of 3,828
Change
+35.2% up on the 30 days before, the better direction

It is in the total. Take it out

c2d4u, no longer updated

70 downloads in the last 30 days

Rank
400 of 7,575
Change
−34.6% down on the 30 days before, the worse direction

It is in the total. Take it out

Over time

Compare downloads

Needs
21
Dependent packages
90
Suggested by
160
Needs (21)
Optional extras (21)
Dependent packages (50 of 90)
PackageTitleDownloads in 30 days
gtsummaryPresentation-Ready Data Summary and Analytic Result Tables54,752
gsDesignGroup Sequential Design12,586
vcdExtra'vcd' Extensions and Additions6,303
gtExtrasExtending 'gt' for Beautiful HTML Tables5,696
pointblankData Validation and Organization of Metadata for Local and Remote Tables2,007
modeltimeThe Tidymodels Extension for Time Series Modeling1,554
teal.widgets'shiny' Widgets for 'teal' Applications1,151
nflplotRNFL Logo Plots in 'ggplot2' and 'gt'1,114
tsgGenerate Publication-Ready Statistical Tables977
tfrmtApplies Display Metadata to Analysis Results Datasets870
gsDesign2Group Sequential Design with Non-Constant Effect862
scanSingle-Case Data Analyses for Single and Multiple Baseline Designs768
furnitureFurniture for Quantitative Scientists762
docoratorDocorate (Decorate + Output) Displays587
LightLogRProcess Data from Wearable Light Loggers and Optical Radiation Dosimeters551
boot.pvalBootstrap p-Values538
tcplToxCast Data Analysis Pipeline515
actxpsCreate Actuarial Experience Studies: Prepare Data, Summarize Results, and Create Reports507
craneSupplements the 'gtsummary' Package for Pharmaceutical Reporting490
BayesERtoolsBayesian Exposure-Response Analysis Tools485
tidyCDISCQuick Table Generation & Exploratory Analyses on ADaM-Ish Datasets479
BayesianReasoningPlot Positive and Negative Predictive Values for Medical Tests463
polishPolishing Content for 'Word' and 'PowerPoint'461
gtstatsBeginner-Friendly Statistics and Publication-Ready Tables456
BasicStatsPlotsPublication-Ready Data Visualization and Simple Statistical Inference453
UnalRWrapper for Interactive and Static Data Visualization450
campsisncaNon-Compartmental Analysis for Campsis Simulation Platform449
ivo.tableNicely Formatted Contingency Tables and Frequency Tables443
chisquareChi-Square and G-Square Test of Independence, Power and Residual Analysis, Measures of Categorical Association426
forestsearchExploratory Subgroup Identification in Survival and GLM Outcomes396
metalite.aeAdverse Events Analysis Using 'metalite'395
gtregressionTools for Creating Publication-Ready Regression Tables377
RastaRocketRocket-Fast Clinical Research Reporting370
biostatsBiostatistics and Clinical Data Analysis370
surveyexplorerQuickly Explore Complex Survey Data369
RSP'shiny' Applications for Statistical and Psychometric Analysis359
OhdsiReportGeneratorObservational Health Data Sciences and Informatics Report Generator356
OmopViewerVisualise OMOP Results using 'shiny' Applications352
REDCapCASTREDCap Metadata Casting and Castellated Data Handling351
tablespanCreate Satisficing 'Excel', 'HTML', 'LaTeX', and 'RTF' Tables using a Simple Formula348
GRShinyGraded Response Model347
alphavantagepf'Alphavantage Financial Data' API R Wrapper and Shiny Interface343
CiteSourceData-Driven Search Strategy Development and Evidence Synthesis Reporting332
boinetConduct Simulation Study of Bayesian Optimal Interval Design with BOIN-ET Family332
smdiPerform Structural Missing Data Investigations332
LogisticEnsemblesAutomatically Runs 18 Logistic Models-14 Individual Logistic Models and 4 Ensembles of Models329
crimeutilsA Comprehensive Set of Functions to Clean, Analyze, and Present Crime Data326
plotorOdds Ratio Tools for Logistic Regression325
blindspikerLaboratory Blind Spike Sample Analyses322
autoFlagRAI-Driven Anomaly Detection for Data Quality320
Functions
1,145
Public exports
202
Lines of R code
84,241
Median complexity
2
Functions (1,145)
Size and composition

Lines by kind (131,169)

KindLinesShare
R code84,24164%
Tests7,5326%
Documentation39,39630%

Lines by language

LanguageLinesShare
R91,10070%
Rd39,39630%
Markdown6730.5%

Languages are counted from file extensions.

Files
436
R functions
1,145
Object systems
S3: 56 methods
Complexity
Median
2
Mean
4.2
Highest
142
Median lines per function
17
About complexity

Cyclomatic complexity counts the independent paths through a function: 1 is a straight line, higher is harder to test. R functions only.

Call graph figures
R functions
1,145
Calls
3,277
Unconnected
49
Groups
9
Growth (20 releases)
Total lines by release
43,118 on 31 Mar 2020131,169 on 15 Oct 2026
Release changes

The tests ran and coverage was measured.

Lines run by tests
26.8%
Expressions run by tests
30.7%
Test cases
207
Exports named in tests
39.1%
Coverage by file (91)
Coverage run
Lines counted
28,433
Lines the tests ran
7,631
Tests passed
Yes
Measured with
covr 3.6.5 on R 4.6.1
Test suite
Has tests
Yes
Test frameworks
testthat, tinytest
Test cases
207
Snapshot tests
14
Lines of tests
7,532
Test lines per line of code
0.09
Exports documented
99.5%
Arguments documented
96%
Return value documented
96.3%
Help pages with examples
9.3%
Examples run in checks
100%
Other documentation
README
No
Release notes file
Yes
Help pages
216
Lines of documentation
39,396

36 datasets, 18 can be loaded by name

DatasetSizeColumns
constantsThe fundamental physical constants354 × 6name, value, uncert, sf_value, sf_uncert, units
countrypopsYearly populations of countries from 1960 to 202413,975 × 5country_name, country_code_2, country_code_3, year, population
exibbleA toy example tibble for testing with gt: exibble8 × 9num, char, fctr, date, time, datetime and 3 more
filmsFeature films in competition at the Cannes Film Festival1,873 × 8year, title, original_title, director, languages, countries_of_origin and 2 more
gibraltarWeather conditions in Gibraltar, May 20231,431 × 10date, time, temp, dew_point, humidity, wind_dir and 4 more
gtcarsDeluxe automobiles from the 2014-2017 period47 × 15mfr, model, year, trim, bdy_style, hp and 9 more
illnessLab tests for one suffering from an illness39 × 11test, units, day_3, day_4, day_5, day_6 and 5 more
metroThe stations of the Paris Metro321 × 11name, caption, lines, connect_rer, connect_tramway, connect_transilien and 5 more
nuclidesNuclide data3,383 × 29nuclide, z, n, element, radius, radius_uncert and 23 more
peepsA table of personal information for people all over the world100 × 14name_given, name_family, address, city, state_prov, postcode and 8 more
photolysisData on photolysis rates for gas-phase organic compounds34 × 10cmpd_name, cmpd_formula, products, type, l, m and 4 more
pizzaplaceA year of pizza sales from a pizza place49,574 × 7id, date, time, name, size, type and 1 more
More datasets (24)
DatasetSizeColumns
reactionsReaction rates for gas-phase atmospheric reactions of organic compounds1,683 × 39cmpd_name, cmpd_mwt, cmpd_formula, cmpd_type, cmpd_smiles, cmpd_inchi and 33 more
rx_addvAn ADDV-flavored clinical trial toy dataset291 × 20STUDYID, STUDYIDN, USUBJID, TRTA, TRTAN, ITTFL and 14 more
rx_adslAn ADSL-flavored clinical trial toy dataset182 × 14STUDYID, STUDYIDN, USUBJID, TRTA, TRTAN, ITTFL and 8 more
sp500Daily S&P 500 Index data from 1950 to 201516,607 × 7date, open, high, low, close, volume and 1 more
szaTwice hourly solar zenith angles by month & latitude816 × 4latitude, month, tst, sza
townyPopulations of all municipalities in Ontario from 1996 to 2021414 × 25name, website, status, csd_type, census_div, latitude and 19 more
conversion_factors1,038 × 4type, from, to, conv_factor
country_names242 × 576
country_names_additional28 × 3country_code_2, country_code_3, name
css_colors148 × 4color_name, hexadecimal, category, is_x11_color
currencies172 × 5curr_code, curr_number, exponent, curr_name, symbol
currency_symbols20 × 2curr_symbol, symbol
default_locales228 × 2default_locale, base_locale
durations2,391 × 41locale, type, duration-week.displayName, duration-week.unitPattern-count-one, duration-week.unitPattern-count-other, duration-week.unitPattern-count-zero and 35 more
flag_tbl242 × 4country_code_2, country_code_3, country_name, country_flag
fractions1,001 × 4x, low, med, high
google_axes_tbl251 × 4name, tag, min_value, max_value
google_font_tbl1,313 × 5name, designer, license, category, date_added
google_styles_tbl3,027 × 7name, style, weight, filename, post_script_name, full_name and 1 more
locales574 × 47locale, lang_name, lang_desc, script_name, script_desc, territory_name and 41 more
palettes_strips840 × 6package, palette, length, type, novelty, colors
spelled_num101 × 81number, af, ak, am, ar, az and 75 more
styles_colors_params36 × 16color, style, table_hlines_color, location_hlines_color, column_labels_background_color, stub_background_color and 10 more
tf_words6 × 575

Funded by Posit Software, PBC

Earlier names (1)
  • RStudio

rstudio / gt on github.com

Stars
2,162no change on 30 days ago
Forks
228
Open issues
245
Last commit
15 Oct 2026
Activity
Commits
9,575
Open pull requests
20
Tagged releases
20
Latest tagged release
v1.4.0, 15 Oct 2026
In development
Default branch at 1.4.0.9000, ahead of CRAN 1.4.0 (checked 2026-10-25)
Issues closed in
1,374 days (median)
Pull requests closed in
0 days (median)
Pull requests merged
93%
Created
20 Mar 2018
Licence file reads as
–
Development practices (15)
KindFound
Continuous integrationGitHub Actions, R CMD check workflow
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
Governance and communityCode of conduct, Contributing guide, Issue templates, PR template, Security policy
Docs sourcepkgdown
GitHub Pages site last deployed 2026-10-15
The repository has a site deploy workflow
pkgdown site last built 2026-10-15
CoverageCoverage reporting (Codecov)
Reproducibility and dev environmentdata-raw/
Research and citationCITATION.cff
Lint, format, editorRStudio project
Git structural.gitattributes

Method, repository practices

Across rstudio

Tools

ToolFirst seenFound
GitHub Copilot15 Nov 2025Pull request: opened by its own account
  • Pull request

Across rstudio

R releases
  • On CRAN
  • Release
VersionReleasedR
1.4.0 current15 Oct 20264.6.1
1.3.022 Jan 20264.5.2
1.2.016 Dec 20254.5.2
1.1.024 Sep 20254.5.1
1.0.05 Apr 20254.4.3
0.11.14 Oct 20244.4.1
0.11.010 Jul 20244.4.1
0.10.118 Jan 20244.3.2
Earlier versions (12)
VersionReleasedR
0.10.07 Oct 20234.3.1
0.9.031 Mar 20234.2.3
0.8.017 Nov 20224.2.2
0.7.025 Aug 20224.2.1
0.6.024 May 20224.2.0
0.5.022 Apr 20224.2.0
0.4.015 Feb 20224.1.2
0.3.17 Aug 20214.1.0
0.3.012 May 20214.0.5
0.2.26 Aug 20204.0.2
0.2.123 May 20204.0.0
0.2.0.531 Mar 20203.6.3
Release notes (1.4.0)

New features

  • The new rows_hide() and rows_unhide() functions control row visibility, mirroring cols_hide() and cols_unhide(). Hidden rows are excluded from the rendered table but can still be targeted in rows expressions, and summary rows are calculated from the visible rows only. (#2127)
  • Numeric formatting functions (fmt_number(), fmt_scientific(), fmt_engineering(), fmt_percent(), fmt_currency(), and others) gain a drop_leading_zero argument. Setting this to TRUE removes the leading zero from values between -1 and 1 (e.g., 0.75 becomes .75), which is useful for displaying correlations, p-values, and other bounded statistics (#2146). (#2155)
  • Tables can now be saved as PowerPoint files with gtsave() by using the .pptx file extension. This is powered by a new OOXML rendering engine that aims to unify Word and PowerPoint output (#97). (@thebioengineer, @romainfrancois, #2158)
  • gt_group() can now combine gt_group objects with gt_tbl objects (#2128). (@shannonhaughton, #2129)
  • Tables with no data rows now display a locale-appropriate message (e.g., "Table has no data") in the body area for both HTML and LaTeX output. The message can be customized via tab_options(table.no_data_message = "...") or suppressed by setting it to "" (#1881).

Upcoming changes

  • gt's internals and documentation now use the base pipe (|>) throughout. gt still re-exports %>%, dplyr::vars(), and tidyselect::one_of(), but these re-exports will be removed in a future release. Packages relying on them should import them directly from magrittr, dplyr, or tidyselect. (@olivroy, #2150)

Minor improvements and bug fixes

  • Fixed LaTeX and RTF output for unformatted Date columns, which now show calendar dates instead of day counts since the Unix epoch (#2177). (@LeonidasZhak, #2180)
  • Rows in LaTeX output tables no longer overlap when cell text contains line breaks (#2178). (#2179)
  • Fixed cols_merge() with <</>> patterns producing corrupted output when data values contain < or > characters, particularly in LaTeX output (#2153). (#2156)
  • Fixed gt_split() failing on grouped data frames by filtering stale row group metadata after subsetting rows (#2089). (#2157)
  • Fixed md() in a column label causing the column to expand to full page width (\linewidth) in LaTeX/PDF output when no explicit column width is set (#2124). (#2162)
  • Fixed text_transform() passing HTML-escaped text (e.g., &amp;) to the user-supplied function instead of the original display text; functions like stringr::str_to_title() now receive and transform plain text as expected (#2033). (#2163)
  • Fixed text_replace() failing to match patterns containing LaTeX special characters (e.g., underscores) in LaTeX/PDF output. The same plain-text pattern now works consistently in both HTML and LaTeX (#1592). (#2165)
  • Styles applied with tab_style() to cells_column_spanners() are no longer dropped when tab_style() is called before tab_spanner() (#1438). (#2174)
  • The headers attributes on <td> elements in HTML output tables now match the id attributes of their column headings when column names contain spaces, improving accessibility (#2085). (#2173)
  • The vertical alignment of the row group column (with row_group_as_column = TRUE) can now be set with tab_style() through body cell styles. (#2176)
  • Fixed cell misalignment when using summary_rows(side = "top") with row_group.as_column = TRUE and no stub column (#1561). (#2175)
  • Styling can now be applied to summary rows in LaTeX output tables without error (#2117). (@thebioengineer, #2123)
  • Fixed multi-column stub rowspans incorrectly crossing row-group boundaries when adjacent groups share the same stub value, which caused group labels to appear in the wrong rows (#2121). (#2161)
  • Fixed grand summary rows rendering incorrectly in HTML output tables with a multi-column stub (#2164). (@ChidiebereNjoku, #2167)
  • Fixed higher-level column spanners not displaying correctly when a multi-column stub is present (#2170). (@ysaidani, #2171)
  • Fixed cells_stub() incorrectly resolving footnote row indices when a multi-column stub has repeated labels across non-contiguous groups (#2168). (@ysaidani, #2169)
  • Improved RTF handling of column headers and spanners in tables with a multi-column stub (#2118). (@thebioengineer, #2145)
  • Empty strings marked with md() are now handled correctly in Word output tables (#2119). (@thebioengineer, #2120)
  • The keep_with_next parameter is now applied consistently in as_word() (#2149). (@shannonhaughton, #2151)
  • Removed usage of dplyr::case_match(), which is deprecated as of dplyr 1.2.0. (@olivroy, #2125)
  • Fixed several typos in the documentation. (@jeis4wpi, #2152)