Skip to content

Kroger (KR)

Consumer Staples · Supermarket chains and grocery retail · NYSE

A century-old diversified grocer and media platform leveraging first-party customer data and loyalty to drive alternative profit growth while modernizing its 2,697-store footprint through e-commerce and personalization.

What Kroger does

Kroger is a major U.S. grocery retailer operating 2,697 supermarkets across 35 states and Washington D.C. under multiple local banners, generating revenues primarily from retail grocery sales, pharmacies (at 2,250 stores), and fuel centers (at 1,731 stores). The company is executing a strategic pivot toward higher-margin alternative profit businesses, particularly its Kroger Precision Marketing retail media platform, which uses first-party customer data to deliver targeted advertising to consumer packaged goods companies. Its core growth strategy centers on Fresh products, private-label "Our Brands," personalization, and omnichannel e-commerce (Pickup, Delivery, Express Lane services available at most locations).

Themes: Retail media and advertising tech, Omnichannel grocery e-commerce, First-party data monetization, Customer loyalty and personalization, Supermarket consolidation, Private-label growth

Fundamentals

  • Price$57.90 as of 2026-08-21 close
  • Market cap$35.5B as of 2026-08-21
  • 1-year return-18.9% 2025-08-21 close $71.42 → 2026-08-21 close $57.90
  • P/E33.03 as of 2026-08-24
  • Net margin+0.7% as of 2026-08-24
  • Gross margin+23.2% as of 2026-08-24
  • ROE+2.5% as of 2026-08-24
  • Debt / equity2.63 as of 2026-08-24
  • Revenue growth (YoY)+1.1% as of 2026-08-24
  • Revenue CAGR (3y)-0.1% SEC XBRL
  • Beta0.35 as of 2026-08-24
  • Last reported earnings2026-06-18 SEC EDGAR Form 8-K (Item 2.02)

Dividend: yield +2.6%; at least 5 years of non-decreasing per-share dividends (SEC XBRL) — we do not hold the year before it, so the real streak may be longer.

Ask why KR looks like this →

How KR compares in its sector

  • price-to-earnings ratiomiddle range 97 covered Consumer Staples peers, as of 2026-08-24
  • net profit marginbottom 25% 116 covered Consumer Staples peers, as of 2026-08-24
  • operating marginbottom 25% 116 covered Consumer Staples peers, as of 2026-08-24
  • gross marginmiddle range 116 covered Consumer Staples peers, as of 2026-08-24
  • return on equitybottom 25% 116 covered Consumer Staples peers, as of 2026-08-24
  • 3-year revenue CAGRmiddle range 109 covered Consumer Staples peers
  • indicated dividend yieldmiddle range 77 covered Consumer Staples peers, as of 2026-08-24
  • free cash flow (absolute dollars, latest fiscal year)top 10% 110 covered Consumer Staples peers, as of FY2026

Position among covered Consumer Staples companies that report each metric (minimum 5 peers). A relative position within our covered catalog — not a valuation, quality, or investment judgment. A higher percentile is simply a higher value (for P/E, more expensive on earnings — never "better"). Informational only.

Ask how KR stacks up against peers →

Top 10 scores & list membership

KR is not currently in any published Top 10 list. Its scores are below.

Long-term score

22.4 #975 of 987 scored · #47 of 49 in Consumer Staples

  • Profitability8.5
  • Growth21.6
  • Financial health10.7
  • Valuation24.6
  • Capital return70.8
  • Long-term trend19.8

Capital return 71st (consecutive years of dividend increases 5 years) and valuation 25th (price to book 5.5, price to earnings 33.5); weakest is profitability (9th, operating margin 1.3%, return on equity 2.5%).

Short-term score

40.1 #1400 of 1,704 scored · #51 of 69 in Consumer Staples

  • Trend37.1
  • Momentum42.6
  • Setup36.5
  • Volume and participation39.6
  • Catalysts45.3

Catalysts 45th: open-market insider buys in 90 days 15, the analyst consensus rating is unchanged since the prior reading; momentum 43rd: its RSI momentum gauge is in neutral territory; weakest is setup 37th: no fresh 20-day breakout up or down.

Scores as of 21 Aug 2026. Each bar is a percentile: how this company ranked against every company the score ranked, 0–100. A list is a published formula and its output, not a recommendation. Method version 2.

Dividend coverage (FY2026)

Covered by reported results. In FY2026, KR's dividend was covered by reported results (earnings payout 87%, free-cash-flow payout 26%). This describes past coverage, not a forecast.

  • Earnings payout87% dividends / net income
  • Free-cash-flow payout26% dividends / (operating cash flow − capex)

Coverage derived from reported SEC EDGAR XBRL figures for FY2026 (dividends paid vs. net income and free cash flow, same fiscal year). This describes PAST coverage for one fiscal year — it does not predict whether a dividend will be maintained, raised, or cut, and a one-year payout ratio can be distorted by non-recurring items. Informational only — not financial advice.

Ask whether KR's dividend is covered →

How Kroger looks technically

Kroger (KR) is trading 10.1% below its 200-day average, the long-term trend line — a long-term downtrend. Its 50-day average crossed below its 200-day average about 46 trading days ago — a "death cross", a bearish long-term signal. There is no clear trend right now — the price is choppy (ADX, a 0–100 trend-strength gauge, is 14, below the 25 that marks a real trend). Momentum is neutral — its 14-day RSI (a 0–100 momentum gauge) is 53, neither overbought (above 70) nor oversold (below 30). MACD, a trend-momentum gauge, turned bullish about 3 trading days ago (its momentum flipped positive). It made a new 20-day low about 38 trading days ago. It is 24.4% below its highest point of the past year.

Trend

8
Distance from the 200-dayit is trading 10.1% below its 200-day average, the long-term trend line — a long-term downtrend-10.1%
50-day moving averageits average price over the last 50 trading days — a short-term trend line — is $58.14$58.14
200-day moving averageits average price over the last 200 trading days — the long-term trend line — is $64.39$64.39
Swing structureits recent peaks and dips disagree — one of them is rising while the other is not, so there is no clean up or down pattern in the swingsmixed — one of the two is not confirming
Last swing turnits last significant turn was a swing low 9 calendar days ago — the swings before that are what the structure reading is measured on9 sessions
Wave structureits recent swings can be read as a completed three-part downward correction — a pullback in the A-B-C shape Elliott-wave chartists use; the labelling fails if price closes below 55.1428. It is the only labelling that fits, though not with textbook proportions, and it describes the swings already printed, not what comes next.possible three-wave downward correction, complete (atypical proportions)
Since the 50/200 crossits 50-day average crossed below its 200-day average about 46 trading days ago — a "death cross", a bearish long-term signal46 sessions
Trend strength (14-day ADX)there is no clear trend right now — the price is choppy (ADX, a 0–100 trend-strength gauge, is 14, below the 25 that marks a real trend)13.7

Momentum

3
14-day RSImomentum is neutral — its 14-day RSI (a 0–100 momentum gauge) is 53, neither overbought (above 70) nor oversold (below 30)52.6
Position in its 14-day rangeit is trading near the top of its 14-day range ($55.06 to $58.27) — its "stochastic" reading is 88 out of 100, where 0 would mean closing exactly at the 14-session low and 100 exactly at the high. This measures WHERE the price sits inside its recent range, which is a different question from the RSI beside it: RSI is a momentum gauge, measuring how FAST the price has been moving, so a stock can drift quietly to the bottom of its range with an ordinary RSI, or fall sharply and still sit in the middle. It has been climbing within that range over the last few sessions.88.3
Since the MACD crossed zeroMACD, a trend-momentum gauge, turned bullish about 3 trading days ago (its momentum flipped positive)3 sessions

Range

12
52-week highits highest closing price over the past year (about 252 trading days) was $76.58$76.58
From the 52-week highit is 24.4% below its 52-week high (its highest price of the past year)-24.4%
Above the 52-week lowit is 6.9% above its 52-week low (its lowest price of the past year)+6.9%
Below the 52-week highit is 24.4% below its highest point of the past year24.4%
Since a 20-day breakoutit made a new 20-day low about 38 trading days ago38 sessions
Since a 55-day breakoutit made a new 55-day low about 38 trading days ago38 sessions
All-time highits highest closing price on record is $76.58 (set on 2026-03-12)$76.58
Given back of the 52-week moveover the past year its closes ranged ($55.53 to $75.60), and it has recovered only a small part of its fall from last year’s high — 12% of it. Chart-watchers call 61.8%-65% given back the "golden pocket" — for this company that is $67.93 to $68.58. It is watched widely enough that orders cluster there, which is the honest reason it matters; it is not a forecast.11.8%
From the all-time highit is 24.4% below its all-time high-24.4%
Nearest price levelit is trading 0.5% below a resistance level at $58.19 — a price it turned at three times since 2024-10-25, most recently on 2026-01-08. Since 2024-08-21 it has 2 such levels below the current price and 9 above. Levels like these describe where the price has reversed or paused before; they are not a forecast of where it will go.+0.5%
All-time lowits lowest closing price on record is $9.03 (set on 2006-02-02)$9.03
Above the all-time lowit is 541.6% above its all-time low+541.5%

Volatility

5
Band width vs its own 6 monthsday-to-day price swings are narrower than usual versus its own recent 6-month history (tighter than about 84% of it)16th percentile
Typical daily rangein a typical session it travels about $1.48 between its high and its low — about 2.6% of its price. That is its "average true range" over the last 14 sessions, which also counts the distance from the previous close, so a day that opens well away from yesterday counts as the large move it was$1.48
Bollinger bands (20-day, ±2σ)most of its recent trading has stayed between about $55.18 and $59.32 — the "Bollinger bands", a range drawn two standard deviations either side of its 20-day average price, which widens when the stock gets more volatile and narrows when it settles$55.18 – $57.25 – $59.32
Typical daily range (% of price)its price moves about 2.6% in a typical session — calmer than most companies we cover. This is the average gap between a session's high and low over the last 14 sessions, counting overnight moves, expressed against the current price so it can be compared with companies trading at any price2.5%
Stretch from the 200-day averageit is trading 4.4 daily ranges below its 200-day average price (10.1% below it in plain percentage terms) — a way of asking how far it has stretched from its own average in units of how far it normally moves in a day, so a calm company and a jumpy one can be compared on the same scale4.4 daily ranges below its 200-day average

Volume

1
Volume vs its 30-day averagetrading volume is about normal versus its 30-day average0.91×

Analyst

2
Change in the average price targetanalysts have cut their average price target by 0.2% since the prior reading-0.2%
Change in the consensus ratingthe analyst consensus rating is unchanged since the prior readingunchanged

Candlestick patterns

1
Since a doji2 sessions ago it opened and closed at almost the same price after trading through a wider range — a "doji", the classic picture of buyers and sellers finishing the session level2 sessions ago

Price gaps

3
Gap at the openit opened on 2026-08-21 0.3% above the previous session's close — an overnight gap, the part of the move that happened while the market was shut, and had not traded back through that level by the close+0.3%
Open gapit gapped 3.9% below the previous close 44 sessions ago and has not traded back through the level it left behind at 61.82 — an "unfilled gap", which describes a price range no trade has since crossed and is not a forecast that it will be crossed-3.9%
Gap filleda 2.3% gap up opened on 2026-08-18 has been "filled" 2 sessions ago — price traded back through the level the gap left behind, and it took 1 session to close2 sessions ago

Price streaks

1
Closing streakit has closed higher 2 sessions in a row, a +2.9% move over the run — an unbroken run of up days, which describes what has already happened and says nothing about the next session2 sessions up

Relative strength

4
vs market, 1 monthover the past 1 month this stock lagged the market by 2.1 percentage points (the stock gained 0.2% while the market gained 2.3%)-2.1%
vs market, 3 monthsover the past 3 months this stock lagged the market by 16.8 percentage points (the stock lost 13.7% while the market gained 3.1%)-16.8%
vs market, 6 monthsover the past 6 months this stock lagged the market by 23.8 percentage points (the stock lost 12.7% while the market gained 11.1%)-23.8%
vs market, 12 monthsover the past 12 months this stock lagged the market by 39.4 percentage points (the stock lost 18.9% while the market gained 20.5%)-39.4%

Signal agreement

2
Bullish technical signals1 of the 9 technical signals we can compute for it is currently in a bullish state: MACD momentum is positive — these describe past price behaviour, not a forecast1 of 9
Bearish technical signals5 of the 9 technical signals we can compute for it are currently in a bearish state: a "death cross" — its 50-day average is below its 200-day, trading below its 200-day average, lagging the market over 6 months, near the top of its 14-day range (overbought), trading below the Ichimoku cloud — these describe past price behaviour, not a forecast5 of 9

Trend (Ichimoku cloud)

1
Vs the Ichimoku cloudtrading 2.2% below the Ichimoku cloud — a band drawn from where its own highs and lows sat up to 2026-07-16 and projected forward over today's price, the side traders read as an established downtrend, with the band above acting as the level that would have to be cleared. The band itself is moderate, spanning 6.5% of the share price.-2.2%

Volume-weighted price

2
Vs this year’s average price paidthe price is 9% below the average price paid so far this year, so the typical buyer over that stretch is under water. That average is $63.72 — a volume-weighted average of daily closes over 157 sessions, not a true tick-by-tick VWAP.-9.1%
Vs the average paid since it last reportedthe price is 1% above the average price paid since it last reported on 2026-06-18 (its 8-K), so the typical buyer over that stretch is showing a gain. That average is $57.50 — a volume-weighted average of daily closes over 45 sessions, not a true tick-by-tick VWAP.+0.7%

Price levels it has turned at before

KR last closed at $57.90 on 2026-08-21. Since 2024-08-21 it has turned at 2 prices below its last close and 9 above; the 2 nearest below and the 3 nearest above are listed, nearest first.

LevelSideDistanceEvidence
$58.19Resistance0.5% above the last closeturned there three times · 2024-10-25 to 2026-01-08
$56.84Support1.8% below the last closeturned there four times · 2024-09-16 to 2026-07-15
$55.04Support5.0% below the last closeturned there 7 times · 2024-09-04 to 2026-08-12
$60.92Resistance5.2% above the last closeturned there 8 times · 2024-11-11 to 2026-07-28
$62.58Resistance8.1% above the last closeturned there three times · 2024-12-27 to 2025-11-06

A level is a price this company reversed or paused at more than once — they describe past behaviour, not a forecast of where the price will go.

Wave structure

Its recent swings can be read as a three-part downward correction — the A-B-C shape chartists use for a pullback — now complete.

This labelling fails — stops being a possible reading at all — if it closes below $55.14.

It is the only labelling that fits these swings, though its proportions are not the textbook ones. It was chosen from 3 labellings that survived the rules, counting shorter readings of the same bars.

This labelling was already in place when we began recording count changes on 2026-08-13, so how long it has stood is not something we can say yet.

Read from daily closes as of 2026-08-21.

An Elliott-wave count describes the swings already printed and the level that would disprove it. It is not a forecast, a target, or advice.

Based on daily closing prices as of 2026-08-21. Describes past price behavior only — informational, not financial advice.

Ask about KR's technicals →

Analyst consensus

  • Consensus ratingBuy (2.08 mean, 1=Strong Buy…5=Strong Sell) — 22 analysts
  • Mean price target$70.50 range $58.00 – $86.00; median $71.50

Analyst estimates, as of 2026-08-22. These are third-party analyst opinions and price targets, aggregated — not a recommendation, prediction, or advice from stocks-llm. Informational only.

Analyst EPS estimate for KR

  • Consensus EPS estimate$1.05 next reporting period, as of 2026-08-22

Change over time is not available yet: it needs two readings of the same reporting period at least 30 days apart, and we have been recording these estimates since 2026-08-04. An estimate for a DIFFERENT quarter is not a revision, so a reading from before the last report is never compared with one after it.

The consensus estimate for the next reporting period, and how it has moved between readings of that SAME period. A change is measured only between readings estimating one period — when a company reports, the consensus moves to the next quarter and the two numbers are not comparable. Informational only, not a forecast and not advice.

Ask how KR's estimates have moved →

Key risks (from latest filing)

["Intense competition from existing and new competitors (including Amazon and other discount grocers) with aggressive pricing and promotional strategies that could pressure margins and sales growth","Labor market pressures, unionization risks, and potential work stoppages that could affect operational costs and execution of growth plans","Regulatory and antitrust headwinds, including litigation relating to the terminated Albertsons acquisition and evolving healthcare/pharmacy consolidation regulations"]

See KR's biggest risks from its latest 10-Q →

What changed in the latest 10-Q

AI-assisted comparison of KR's 10-Q filed 2026-06-26 against the prior one filed 2025-12-12.

Management's Discussion & Analysis (MD&A)

  • Added:
    • Newer filing (2026-06-26) adds reference to Section 21E of the Securities Exchange Act of 1934 in the CAUTIONARY STATEMENT opening sentence
    • Newer filing adds 'the potential costs and risks associated with new technologies, including artificial intelligence' to risk factors
    • Newer filing adds 'We cannot fully foresee the effects of changes in economic conditions on our business' as a separate bullet point
    • Newer filing includes a FINANCIAL PERFORMANCE DATA table with Q1 2026 vs Q1 2025 comparison showing specific metrics (Sales, FIFO gross margin, OG&A rate, Operating profit, etc.)
    • Newer filing includes a SIGNIFICANT EVENTS section beginning with eCommerce sales growth information
    • Newer filing specifies 'state and federal regulatory agencies' instead of just 'regulatory agencies'
  • Removed:
    • Older filing (2025-12-12) includes a section titled 'OUR VALUE CREATION MODEL – DELIVERING CONSISTENT AND ATTRACTIVE TOTAL SHAREHOLDER RETURN' with detailed description of Kroger's value creation strategy, which is not present in the newer filing's excerpt
    • Older filing includes statement 'We assume no obligation to update the information contained in this report unless required by applicable law' while newer filing says 'this Form 10-Q'
  • Reworded:
    • Older: 'pricing and promotional activities of existing and new competitors, and the aggressiveness of that competition' changed to newer: 'pricing and promotional activities of existing and new competitors and the aggressiveness of that competition' (removed comma before 'and')
    • Older: 'potential cyber-attacks' changed to newer: 'potential cyberattacks' (compound word without hyphen)
    • Older: 'through our strategic pillars of Fresh, Our Brands , personalization, and eCommerce' changed to newer: 'through Fresh, Our Brands , Personalization and eCommerce' (removed 'our strategic pillars of', capitalized 'Personalization', removed comma before 'and')
    • Older: 'the terminated transaction with Albertsons' changed to newer: 'the terminated transaction with Albertsons Companies, Inc.' (added company legal designation)
  • Notes:
    • The newer filing excerpt appears to be truncated at the eCommerce sales section, while the older filing excerpt was also truncated but at a different point; comparison is limited to the content provided
    • The older filing includes sections (e.g., VALUE CREATION MODEL) not present in the newer filing excerpt, suggesting the newer filing may reorganize or relocate this content rather than remove it entirely

AI-assisted comparison of two SEC filing sections. It describes wording and theme changes only, makes no materiality, legal, or investment judgement, and is not financial advice. Informational only — not financial advice.

Ask what changed in KR's latest 10-Q →

Insider activity (SEC Form 4)

0 open-market purchases and 1 open-market sale by insiders in the last 90 days.

  • Last 90 days0 buys · 1 sell ($2M) — 1 selling insider
  • Last 180 days0 buys · 1 sell ($2M) — 1 selling insider

Activity heuristic: net selling (a transparent product heuristic from the counts above, not a prediction or advice)

Most recent open-market transaction: 2026-07-14. As of 2026-08-24.

View full insider trading history → View SEC Form 3/4/5 filings

Ask about KR's insider activity →

Only open-market purchases (SEC code P) and sales (code S) are counted here. Option exercises, vesting/awards, gifts, and shares withheld for taxes are excluded — they are compensation or mechanical, not open-market conviction. Sales may be planned and non-discretionary (e.g. a Rule 10b5-1 plan) and are not necessarily bearish; open-market buying is not a recommendation to buy. Informational only — not financial advice.

Congressional trading disclosures

U.S. House members publicly disclose their own, their spouse's, and dependent children's stock transactions under the STOCK Act. We hold 13 matched disclosures for KR from U.S. House Clerk Periodic Transaction Report filings.

Congressional trading disclosures →

Institutional ownership (13F)

7 institutional 13F filers reported holding KR as of 2026-03-31 (quarter-end position, filed within 45 days).

  • Distinct 13F filers 7
  • Reported shares held 149,377,767
  • Reported value $10,808,975,267

reported quarterly holdings change (2025-12-31 → 2026-03-31): 0 new, 0 increased, 6 decreased, 0 exited. Change counts cover only managers that filed 13F reports in BOTH quarters, derived between two quarter-end snapshots — not same-day trades; a single manager is never said to have "bought" or "sold".

Institutional holdings are quarter-end long positions reported on SEC Form 13F-HR, filed up to 45 days after the quarter ends — they are delayed, are not real-time trades, exclude short positions and most non-US securities, and are not investment advice. Any increase/decrease is a reported change between two quarterly snapshots, not a same-day purchase or sale. These are quarter-end snapshots from the 13F filings on SEC EDGAR, filed within 45 days — not real-time, and any change is a difference between two quarterly reports, not a same-day trade. Informational only — not financial advice.

Ask about KR's institutional holders →

Short interest (FINRA)

KR had 25,866,694 shares of reported short interest as of the 2026-07-31 FINRA settlement date (delayed, bi-monthly; not real-time).

KR had 4.22% of its shares outstanding sold short as of the 2026-07-31 FINRA settlement date (percent of FLOAT would be higher — float is not disclosed in the source). FINRA reported 4.07 days to cover at the same settlement.

  • Reported short interest (shares) 25,866,694
  • Short interest (% of shares outstanding) 4.22%
  • Prior settlement (shares) 29,342,250
  • Reported change -11.84%
  • Days to cover (reported) 4.07

Reported to FINRA as of the 2026-07-31 settlement date. Short interest is reported to FINRA and published on a delayed, bi-monthly schedule (as of a settlement date, disseminated roughly eight business days later) — it is NOT real-time, does not cover every venue or all US trading, and is not a short-squeeze prediction or investment advice. Days-to-cover is the value FINRA reports; percent of float is not shown because the source file carries no share-count denominator — where a percent appears it is of shares OUTSTANDING, the larger base, and is therefore a floor on percent of float. Informational only — not financial advice.

Ask about KR's short interest →

Competitors & peers

AI-enriched competitor set. Linked names are companies covered by stocks-llm; other named peers are shown for reference only.

Not quite? Describe exactly what you want →

Compare KR vs…

Kroger is found in…

Frequently asked questions

What does Kroger (KR) do?

Kroger is a major U.S. grocery retailer operating 2,697 supermarkets across 35 states and Washington D.C. under multiple local banners, generating revenues primarily from retail grocery sales, pharmacies (at 2,250 stores), and fuel centers (at 1,731 stores). The company is executing a strategic pivot toward higher-margin alternative profit businesses, particularly its Kroger Precision Marketing retail media platform, which uses first-party customer data to deliver targeted advertising to…

What sector is Kroger (KR) in?

Kroger (KR) is classified in the Consumer Staples sector. Its industry is Supermarket chains and grocery retail. It trades on NYSE.

Does KR pay a dividend?

Yes — Kroger (KR) pays a dividend, with an indicated yield of about 2.63% and at least 5 years of non-decreasing per-share dividends (SEC EDGAR XBRL) — we do not hold the year before it, so the real streak may be longer (market data, as of 2026-08-24). Informational only — not financial advice.

Who are Kroger's (KR) competitors?

Notable peers of Kroger (KR) include Walmart, Amazon, Target, Whole Foods / Amazon Fresh and Albertsons. This peer set is informational only — not financial advice.

Has there been recent Congressional stock trading in KR?

Yes — we hold 13 matched STOCK Act disclosures for KR from U.S. House Clerk Periodic Transaction Report filings. These are legally-required disclosures (often filed 30–45 days after the trade), may belong to a U.S. House member, their spouse, or a dependent child, and are not an indicator of company performance or investment advice.

Is Kroger (KR) overbought or oversold right now?

Kroger (KR) is currently neither overbought nor oversold — its 14-day RSI (a 0–100 momentum gauge) is 53, in the neutral middle (as of 2026-08-21). RSI describes recent price momentum, not a forecast — informational only, not financial advice.

Where does stocks-llm's data on KR come from?

Fundamentals and prices come from market data, as of 2026-08-24; company filings and profile facts come from SEC EDGAR. All figures are delayed daily-close data shown with their as-of date — informational only, not financial advice.

Fundamentals: market data, as of 2026-08-24. Filings: SEC EDGAR. Prices are delayed daily-close data.

Last updated 2026-08-21.

Informational only — NOT financial advice. All figures are delayed daily-close data from SEC EDGAR & market data, shown with their as-of date.

Research stocks in your own words.

Informational only — NOT financial advice.

ScreenersBlogPrivacyiOS app