17 connectors across AI APIs, pipelines, warehouses, BI, cloud, and CI/CD. Read-only, no ETL, no data leaves your accounts. Pick what you run and copy a credential. That's it.
Per-model, per-workspace, cache-tier cost for the models your team actually uses.
Where warehouse compute actually gets spent.
Compute + storage + serverless credit lines across every major warehouse.
Per-dashboard + per-user cost, joined to the warehouse that actually runs the queries.
Cloud infrastructure and build minutes — the invisible line items.
Data observability tools that bill separately from the warehouse.
Snowflake requires key-pair auth for read-only programmatic access. Costly never asks for a password. Run these four steps once on any machine with openssl.
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub
Strip the PEM header/footer and newlines from rsa_key.pub, then run in Snowflake:
CREATE USER IF NOT EXISTS costly_user TYPE = SERVICE DEFAULT_ROLE = costly_role RSA_PUBLIC_KEY = 'MIIBIjANBgkqh...<paste single-line pubkey>';
CREATE ROLE IF NOT EXISTS costly_role; GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE TO ROLE costly_role; GRANT USAGE ON WAREHOUSE COMPUTE_WH TO ROLE costly_role; GRANT ROLE costly_role TO USER costly_user;
Replace COMPUTE_WH with any warehouse the role can use for ACCOUNT_USAGE queries. For org-level data (preferred), GRANT APPLICATION ROLE ORGADMIN TO ROLE costly_role; as well.
.snowflakecomputing.com (e.g. xy12345.us-east-1).costly_userrsa_key.p8, including the BEGIN/END PRIVATE KEY lines.costly_roleSign in and add your first connection. The dashboard fills in as soon as the first sync completes (usually within a minute).