Replicate Console

Studio access to every Replicate model, billed to the office account and logged against a project.

or

Google and GitHub accounts are checked against the studio — Workspace domain, or your GitHub organisation. Password accounts are added by an admin, for anyone with neither. However you get in, nobody holds a Replicate key: the office token stays on the server.

Step one

Choose a project

Every generation is billed to a project. Pick the one you're working on — you can switch at any time from the header.

Replicate Console
Billing to —
01 — Model catalogue

Explore

The live Replicate catalogue, mirrored through the API. Same models, same inputs, same outputs — the difference is that every run is signed and costed.

GET /v1/search
— Synced from Replicate · 17 Sep 2026
Nothing in the index matches that — search is a ranked index, not the whole catalogue.

Model not in the results?

Paste any owner/name. It resolves through GET /v1/models/{owner}/{name}, which reaches every model on Replicate — including ones published this morning and private models on the office account.

—

—
Set from the project you picked at sign-in.
Estimated cost
—
—
Office account pays—
Client is billed—
An estimate, not a cap — nothing here blocks a run.
02 — Outputs

Gallery

Everything generated through the console, newest first. Click any of them to see it full size, with who made it and what it cost.

02 — Attribution

Activity & cost

Replicate groups every prediction together with no user and no project on it. Once runs go through the console, both are yours.

Cost by person

Replicate cost across all projects.

Cost by project

Same money, cut the other way.

Every run

Newest first.
03 — Billing

Projects

What a project cost, what it's billed at, and the statement the client receives.

—

—

Weekly spend

By tool

Prediction ledger

Admin only

Projects & people

Create a project, set its rate card, and choose who can bill to it. Only a project that exists here can be selected at sign-in.

New projectReady

All projects

Rate card and membership.

People

Google accounts appear here the first time someone signs in. Add a password account for anyone without a Workspace seat.
Add a personAdmin
Membership is the attribution control. A user only sees the projects they're on, so a run can't quietly land against the wrong client. Adding someone mid-project is fine — it doesn't re-price anything already logged.
Reference

How it works

The console sits in front of Replicate and proxies it. Users get the same catalogue and the same inputs they'd get on replicate.com — they just never touch the API token, and every run lands in your ledger with a name and a project on it.

01

You sign into this, not Replicate

There is one Replicate account — the office one — and nobody signs into it. Signing in here identifies you, so the run you're about to make can carry your name. Google Workspace or a password account; an admin creates projects and assigns members, and a member's picker shows only theirs. No project selected, no run.

02

Proxy, never hand out the key

The office token lives in server-side config. The app calls Replicate on everyone's behalf. Nobody holds a personal key, so nothing runs off-ledger.

03

Mirror the whole catalogue

GET /v1/search?query=… is the ranked search across everything public — models, collections and docs, with tags. QUERY /v1/models is the older model-only search and GET /v1/models pages the full list. Cache it nightly so the grid is instant.

04

The form builds itself

GET /v1/models/{owner}/{name} returns the latest version with its openapi_schema. The Input properties are the form — types, defaults, ranges, enums, help text. Render them generically and every model works, including ones published after you ship.

05

Tag before you call

The ledger row — project_id, user_id, prediction_id, model, inputs — is written before the create call returns, and ?project=… goes on the webhook URL as a second path.

06

Close the row on the webhook

webhook_events_filter=["completed"] brings back metrics.predict_time, status and output URLs. Replicate retries up to five times — upsert on prediction_id, never insert.

07

Price it yourself

Replicate returns no cost. Your rate card does it: GPU seconds × hardware rate (H100 $0.001525/s, A100 $0.0014/s, L40S $0.000975/s, T4 $0.000225/s) or units × per-output price. Stamp the rate-card version on the row so old rows never re-price.

08

Markup in a second column

cost_aud and client_price_aud sit side by side. The client statement renders one and never selects the other.

Model artwork comes down with the API. Each model object carries a cover_image_url and its owner an avatar — render those and the grid looks exactly like replicate.com, with no logos to redraw. This prototype can't load external images, so it stands in generated covers and owner monograms.
Search is an index, so keep the escape hatch. A model published this morning, or a private one on the office account, may not come back from search. Always allow a pasted owner/name that resolves straight through GET /v1/models/….
Copy the outputs to your own storage. Replicate's output URLs expire, commonly within an hour. The webhook handler should pull each output into your own bucket and store your URL on the ledger row, or the gallery goes blank a week later.
Failed runs still cost GPU seconds. Decide now whether a failure is absorbed — recommended, nobody wants to bill a client for a retry — and store that as a project setting.

Prototype with representative data. Catalogue is a 17 Sep 2026 snapshot of the live Replicate model list; runs, schemas and search are simulated locally. Hardware rates are Replicate's published per-second prices. Charles Elena.