Velvet Petalia

Makeup expiry tracker & beauty shelf tools

Everything on your shelf

Beauty shelf inventory for makeup & skincare

List what you own, from backups to empties, and see counts by category, what your shelf is worth and what needs using up first. It shares its list with the PAO tracker.

Your shelf at a glance

On the shelf
00 product lines
In use
0opened
Unopened
0backups and new
Used up
0empties logged
Shelf value
0.00price × quantity
Expired or due soon
0.00value to use or replace

Add a product

Status

Your shelf is empty

Add your first product above. Mark spares as unopened so their period after opening starts only when you open them, and log empties as used up to see how much you get through.

Want to look around first? Load sample products; they are marked as samples and you can remove them in one click.

Saved only in this browser and shared with the PAO tracker: open a backup here and its PAO clock starts there. Export CSV opens in any spreadsheet; it exports what the filters show.

How to use the beauty inventory

Add each product with its type, which files it under a category such as Eyes, Lips or Skincare & sun. Everything else is optional, so a quick list of names works as well as a detailed one.

  • Status: unopened for spares and gifts, in use once opened, used up when you finish or bin it. Used-up products leave the shelf totals but stay in your list as empties.
  • PAO and date on the pack give the replace-by date, exactly as in the PAO tracker. Opening a spare with "Opened today" starts its clock.
  • Price and quantity: price is what you paid for one item; the value column multiplies by quantity. The currency symbol is only for display.

The figures at the top count what is on the shelf now. Expired or due soon adds up the value of products that need using or replacing, a nudge to reach for those first.

Search looks through names, brands, shades and notes. Filters and sorting change only what you see, and Print or Export CSV take the current view, so you can print just your lipsticks or a list of unopened spares.

Example: two unopened mascaras at 14 each, a lipstick at 24 in use and a used-up cleanser show as 3 products on the shelf and a shelf value of 52. The cleanser counts only among the empties.

One list, two views

The inventory and the PAO tracker read and write the same list in your browser's local storage. The tracker shows what is open and when it needs replacing; the inventory shows everything, with prices, quantities and empties. Change a product in one and it changes in the other, even in another open tab.

Nothing is uploaded. That also means nobody can restore your list if you clear your browser data, so use Export JSON now and then as a backup, and Import to move the list to another device.

Questions

Is this the same list as the PAO tracker?

Yes. Both pages use one list saved in this browser. The tracker focuses on opened products and their replace-by dates; the inventory adds brands, prices, quantities, unopened spares and used-up empties. Clearing all on either page clears both.

Can I open my inventory in a spreadsheet?

Yes. Export CSV gives one row per product with its category, status, dates, price and quantity, and opens in Excel, Numbers or Google Sheets. You can edit it there and import it back: rows keep their id column, so changed products are updated rather than duplicated.

How is the shelf value worked out?

It adds the price times the quantity of every product that is unopened or in use. Products without a price are left out and counted separately, and used-up products are not included. It is what you paid, not what the products would sell for.

Why log products I have used up?

Empties show what you actually finish and how long things last you, which helps when deciding whether to buy a product again or in a bigger size. The cost-per-use calculator can then compare that size with others.

Is my list private?

It never leaves your device: there is no account and nothing is uploaded. Anyone using the same browser profile could see it, though, and clearing your browser data deletes it, so keep an exported copy somewhere safe.