How to Convert a Photo into a 3D Model in 2026: Web App, API, or Self-Hosted TripoSR

Three ways to turn a photo into a 3D model, a no-install web app, a developer API, and a self-hosted open model, compared on setup, cost, control, and output, plus a step-by-step workflow.

By TripoSR TeamUpdated 2026-07-20Last tested 2026-07-20
Meshy

The no-install web route: upload a photo, get a model in a minute.

Best for Easiest, no setup

Visit Meshy
Tripo API

The developer route: image-to-3D as an API call you can automate.

Best for Best for automation

Visit Tripo API
TripoSR (self-hosted)

The self-host route: free, private, unlimited, if you run the model.

Best for Free and unlimited

Visit TripoSR (self-hosted)

Turning a photo into a 3D model used to mean photogrammetry rigs or hours in a modeling app. In 2026 a single image is enough: AI reconstruction models infer a full 3D mesh from one picture in seconds. The real question is not whether you can convert a photo to a 3D model, it is which route fits you, because there are three, and they trade off setup, cost, control, and automation very differently. This guide walks the actual photo-to-3D steps, then compares the three routes head to head so you can pick the right one. One of them (self-hosted TripoSR) is ours, so weigh our self-assessment accordingly and check the sources.

The three routes are: a no-install web app, where you upload a photo in the browser and download a model (we use Meshy as the representative); a developer API, where you send an image to an endpoint and get a model back programmatically (the Tripo API); and self-hosting an open model, where you run the reconstruction on your own machine for free (TripoSR). Each wins for a different person: the web app for a one-off, the API for automation, and self-hosting for free, private, unlimited conversion. Every factual claim below comes from each tool's official pages, checked on 2026-07-20, and carries a source id you can verify. Meshy and Tripo are trademarks of their owners; this is an independent comparison.

MeshyTripo APITripoSR (self-hosted)
Setup to startNone: browser, no GPUAPI key plus codePython plus a GPU (or CPU)
Cost and scalingFree tier + subscriptionAbout $0.20 to $0.50 per imageFree, unlimited (self-host)
Control and privacyCloud, account requiredCloud, API key requiredLocal: photo never leaves
AutomationManual, in the web UIAsync jobs, poll for resultSelf-built service only
Out-of-box qualityTextured PBR in about 1 minTextured, PBR optionVertex colors, no PBR
Output formatsSTL, 3MF, OBJ, GLB, FBX, USDZGLB, plus OBJ/STL/FBX/USDZGLB or OBJ
License to sell outputPaid: you own it; free: CC BYPaid credits, hosted termsPlain MIT, no strings

By the numbers

Cost per image-to-3D conversion
Meshy
Subscription
Tripo API
About $0.20 to $0.50
TripoSR (self-hosted)
Free (self-host)

Rough per-model cost. Self-hosted TripoSR is free beyond your own hardware and electricity. The Tripo API is credit-based at $0.01 per credit, and an image-to-model task is about 20 to 50 credits, so roughly $0.20 to $0.50 each, with about 300 free trial credits. Meshy is a monthly subscription rather than per-model, so it has no single per-image price. Checked 2026-07-20.

Want to make your own? Try the Image to 3d print, Free image to 3d, Image to 3D model generator, Download or Open-source TripoSR.

Setup: what it takes to start

Best here: Meshy

The first thing that separates the three routes is how much stands between you and your first model. The web app wins outright here: with Meshy you open a browser, upload a photo, and get a model, with no install, no GPU, and no code. For a one-off conversion, or for anyone who is not a developer, that is the shortest path there is.

The Tripo API sits in the middle: there is no software to install, but you create an API key in the Tripo console and write code to send the image and poll for the result, so it assumes you can call a REST endpoint. Self-hosting TripoSR is the most involved to begin: you set up a Python environment, install the model and its dependencies, and ideally have a CUDA GPU, though it falls back to CPU. That setup is a one-time cost and buys you a free, private, unlimited pipeline, but it is a real cost, and if you only need one model, the web app is the honest recommendation.

Meshy

Best for: A one-off conversion with zero setup

Strengths

  • No install, no GPU, and no code: upload a photo in the browser and download a model

Watch-outs

  • You still create an account, and heavy use runs into free-tier limits

Tripo API

Best for: Developers comfortable with a REST call

Strengths

  • Nothing to install: create an API key and call the endpoint from your own code

Watch-outs

  • Assumes you can write code to authenticate, submit a job, and poll for the result

TripoSR (self-hosted)

Best for: People who want a reusable local pipeline

Strengths

  • Once set up, it is a free, unlimited, offline pipeline you fully own

Watch-outs

  • The heaviest to start: a Python environment, model install, and ideally a CUDA GPU

Cost and how it scales

Best here: TripoSR (self-hosted)

Cost is where self-hosting pulls ahead, especially at volume. Because you run the open TripoSR model on your own hardware, converting a photo to a model costs nothing per generation beyond electricity, and there is no cap on how many you make. If you are converting hundreds or thousands of images, that free, unlimited ceiling is decisive, and it is the reason people self-host at all.

The hosted routes bill for convenience. The Tripo API is transparent and pay-as-you-go: credits cost $0.01 each ($1 buys 100), an image-to-model task runs about 20 to 50 credits, so figure roughly $0.20 to $0.50 per image, and Tripo currently offers about 300 free trial credits to start. Meshy is subscription-shaped rather than per-model: a free tier gives you a monthly credit and download allowance, and paid plans lift the caps, so its cost depends on your monthly volume rather than a per-image price. For occasional use both hosted routes are cheap; at scale, self-hosting is the one that does not grow with your usage.

Meshy

Best for: Steady, moderate monthly volume

Strengths

  • A free tier lets you start at no cost, with paid plans to lift the caps

Watch-outs

  • Subscription-based, so sustained or high-volume use means an ongoing monthly fee

Tripo API

Best for: Pay-per-use at moderate volume

Strengths

  • Transparent pay-as-you-go: about $0.20 to $0.50 per image, with roughly 300 free trial credits

Watch-outs

  • Per-generation billing means cost scales linearly with how many images you convert

TripoSR (self-hosted)

Best for: High volume, or free conversion at any scale

Strengths

  • Free and unlimited on your own hardware: no per-generation cost and no cap

Watch-outs

  • The cost is your own GPU and the electricity and time to run it

Control and privacy

Best here: TripoSR (self-hosted)

If the photo you are converting is sensitive, a product prototype, a client asset, personal, where it goes matters. Self-hosting is the only route where the image never leaves your machine: TripoSR runs entirely offline, so nothing is uploaded, and you control the whole pipeline, versions, parameters, and output, with no third-party terms in the loop. For confidential work or air-gapped environments, that is not a nice-to-have, it is the requirement.

The two hosted routes are cloud services, which is exactly what makes them easy but also what you are trading. Meshy processes your upload on its servers under its account and terms, and the Tripo API sends your image to Tripo's endpoint under your API key. Both are normal, reputable SaaS arrangements, and for most public or low-sensitivity images that is completely fine. But if privacy or full control is the priority, self-hosted TripoSR is the route that keeps everything local.

Meshy

Best for: Public or low-sensitivity images

Strengths

  • A managed service handles the compute so you do not maintain anything

Watch-outs

  • Your photo is uploaded to and processed on Meshy's cloud under its account and terms

Tripo API

Best for: Cloud workflows where upload is acceptable

Strengths

  • Managed cloud compute with programmatic access under your own key

Watch-outs

  • Your image is sent to Tripo's servers, so it leaves your environment

TripoSR (self-hosted)

Best for: Sensitive images and air-gapped work

Strengths

  • Runs fully offline: the photo never leaves your machine, and you control the whole pipeline

Watch-outs

  • That control also means you maintain the environment and get no vendor support

Automation and integration

Best here: Tripo API

When converting a photo is one step inside a larger product, a marketplace that turns listing photos into 3D previews, a pipeline that batches a catalog, the API route is built for it. The Tripo API is designed around automation: you authenticate with a key, submit an image as an asynchronous task, receive a task id, and poll for the finished model, and it exposes related operations like texturing, rigging, and format conversion as endpoints. Rate limits are managed by concurrency, so you scale by running tasks in parallel.

The other two are not automation-first. Meshy is a web application you drive by hand, which is ideal for one model but not for programmatically converting a thousand. Self-hosted TripoSR can absolutely be automated, but you build that yourself: wrap the model in your own service with a framework like FastAPI or Flask. That is powerful and free, but it is your code to write and run, whereas the Tripo API is a queue that already exists. Note the honest limit on the API side: completion is by polling, not webhooks, and there is no single batch call, you run concurrent tasks.

Meshy

Best for: Manual, one-at-a-time conversion

Strengths

  • Simple and visual for converting one image at a time

Watch-outs

  • Driven by hand in the web UI, so it does not fit programmatic or batch conversion

Tripo API

Best for: Converting images inside an app or at scale

Strengths

  • Built for automation: authenticated async jobs, poll for results, and endpoints for texture, rig, and conversion

Watch-outs

  • Completion is by polling rather than webhooks, and there is no single batch call: you run concurrent tasks

TripoSR (self-hosted)

Best for: Self-built, free automation

Strengths

  • Can be wrapped in your own API with FastAPI or Flask for a free, private automation pipeline

Watch-outs

  • There is no hosted queue: any automation is a service you build and run yourself

Out-of-the-box quality and textures

Best here: Meshy

How finished the model looks the moment you get it back differs by route, mostly on textures. Meshy returns a textured model with PBR material maps from a single photo in about a minute, so for a newcomer it produces the most presentable result with no extra steps. The Tripo API also returns textured output and offers a PBR texture option, so its ceiling is similar, with the detail you choose per request.

Self-hosted TripoSR is the honest trade here: it reconstructs clean geometry fast, but it outputs vertex colors rather than PBR material maps, and there is no separate texture-synthesis pass, so straight out of the model it looks less finished than the hosted routes. For many uses, a base mesh you will retexture or 3D print, that is fine, and Stability even points users to its SF3D successor for game-ready output. But if you want a photorealistic textured asset with no post-work, the hosted routes lead, and the newer diffusion-based models generally produce higher-fidelity geometry than TripoSR's single-view reconstruction.

Meshy

Best for: A presentable textured model with no post-work

Strengths

  • Returns a textured model with PBR maps from one photo in about a minute, no extra steps

Watch-outs

  • The most finished result is tied to the paid tiers and its monthly caps

Tripo API

Best for: Programmatic control over texture quality

Strengths

  • Textured output with a PBR option and per-request quality control

Watch-outs

  • Texture and detail options add credits, so higher quality costs more per image

TripoSR (self-hosted)

Best for: A fast base mesh you will refine

Strengths

  • Clean, usable geometry from a single image, very fast for its size

Watch-outs

  • Vertex colors only, no PBR and no separate texture pass, so output looks less finished out of the box
  • Lower fidelity than the newer diffusion models, and single view only

Output formats and flexibility

Best here: Tripo API

What you can do with the model next depends on the file you get. The Tripo API is the most flexible: it returns GLB natively and its conversion endpoint exports GLTF, OBJ, FBX, USDZ, STL, and 3MF, so one generation can feed a game engine (FBX), AR (USDZ), or a 3D printer (STL), with the honest caveat that STL drops textures and some formats are not available for rigged models. Meshy is close behind, exporting STL, 3MF, OBJ, GLB, FBX, and USDZ from a single generation.

Self-hosted TripoSR is the narrowest on purpose: it outputs a GLB or OBJ mesh, and you convert to other formats yourself in Blender or a converter. For most uses that is enough, GLB and OBJ open everywhere, but if you need a specific format like USDZ for AR or FBX for a game pipeline without a manual step, the hosted routes hand it to you directly. If you are converting a photo specifically to 3D print it, see our companion guide on getting a printable STL.

Meshy

Best for: Many target formats with no conversion step

Strengths

  • Exports STL, 3MF, OBJ, GLB, FBX, and USDZ from a single generation

Watch-outs

  • Format breadth is a hosted convenience tied to your plan and its limits

Tripo API

Best for: Feeding many downstream pipelines programmatically

Strengths

  • GLB natively, with a conversion endpoint for GLTF, OBJ, FBX, USDZ, STL, and 3MF

Watch-outs

  • STL drops textures and some formats are unavailable for rigged models, and conversion costs extra credits

TripoSR (self-hosted)

Best for: Standard meshes you convert as needed

Strengths

  • Outputs a clean GLB or OBJ mesh that opens in every major 3D tool

Watch-outs

  • GLB and OBJ only: other formats like USDZ or FBX need a manual conversion step

License to use and sell the output

Best here: TripoSR (self-hosted)

If you plan to sell or ship what you make, the license is as important as the mesh. Self-hosted TripoSR is the cleanest: plain MIT, with no user cap, no regional exclusion, and no attribution, so you can use and sell your output freely, and self-hosting means no per-item cost. That is the strongest position for a commercial pipeline. The one honest caveat is that the hosted convenience at triposr.org is a paid product, not free; the free, unrestricted route is running the open model yourself.

The hosted routes carry conditions. Meshy is free to start, but free-plan output is licensed CC BY 4.0, which permits commercial use only if you credit Meshy; on a paid plan you own the assets outright. The Tripo API is a paid service, so its output comes under Tripo's hosted commercial terms and your purchased credits rather than an open license. All three are usable commercially for most projects, but for no-strings, self-owned output, the MIT-licensed self-host route is the clean answer.

Meshy

Best for: Sellers on a paid plan

Strengths

  • On a paid plan you own the assets and can sell them freely

Watch-outs

  • Free-plan output is CC BY 4.0, so selling it requires crediting Meshy

Tripo API

Best for: Commercial use via a paid API

Strengths

  • Commercial use of API output under Tripo's hosted terms and your purchased credits

Watch-outs

  • Output is governed by hosted commercial terms rather than an open, do-what-you-want license

TripoSR (self-hosted)

Best for: No-strings commercial output

Strengths

  • Plain MIT: no cap, no regional exclusion, no attribution, and self-hosting has no per-item cost

Watch-outs

  • The hosted triposr.org convenience is a paid product; the free route requires running the model yourself

How to convert a photo into a 3D model, step by step

Start with the right photo, because the input decides the result more than the tool does. A single, clearly lit subject on a plain background, shot roughly straight on, converts best. Busy backgrounds, heavy reflections, glass, and cut-off edges confuse reconstruction, so crop tight and remove the background if the tool offers it. Remember that these models reconstruct what the camera sees: the front comes out best and the unseen back is inferred, which is why clean product-style photos beat cluttered action shots.

Choose your route. For a single model with no setup, use a web app: open Meshy, upload the photo, and generate. To convert images programmatically or in bulk, call the Tripo API: create an API key, submit the image as a task, and poll for the result. To convert for free, privately, or at high volume, self-host TripoSR: set up the Python environment, load the model, and run inference on your image. All three take one photo in and return a mesh.

Refine and export. Inspect the mesh, delete stray floating bits, and if the topology is messy for your use, retopologize or decimate in Blender. Then export the format your next step needs: GLB or OBJ for general use, USDZ for AR, FBX for a game engine, or STL for 3D printing. The web app and API can hand you most of these directly; with self-hosted TripoSR you convert from GLB or OBJ yourself.

Use it. Drop the model into your target, a game engine, an AR scene, a product render, or a slicer, and adjust scale and materials there. If your goal is a physical print, the mesh needs to be watertight and correctly scaled first; our companion guide covers turning a photo into a printable STL end to end. That prep, generate, refine, export, use loop is the whole workflow, and the route you picked mainly changes how the generate step happens.

Which photos convert well, and which do not

Single-image reconstruction is impressive but not magic, and knowing its limits saves you wasted attempts. It works best on a solid, opaque object with clear form and texture, a shoe, a toy, a piece of furniture, a character figure, photographed against a plain background with even lighting. Because only one side is visible, the model infers the back, so simple and roughly symmetrical objects reconstruct more faithfully than complex asymmetric ones.

It struggles with transparent or reflective surfaces (glass, chrome, water), very thin or wiry structures, scenes with several objects, and anything where the subject blends into the background. For those, better input helps more than a better tool: improve the lighting, isolate the subject, or shoot it against a plain backdrop. If you need the unseen sides to be accurate rather than inferred, use a tool that accepts multiple views, several photos of the same object, which some APIs support through a multiview endpoint. And treat every result as a starting mesh: none of these routes produces CAD-accurate dimensions, so measure and scale before you rely on it.

Which should you pick?

  • You just want one 3D model from a photo, right now

    Meshy A browser upload returns a textured model in about a minute, with no install, GPU, or code.

  • You are a developer converting images inside an app or in bulk

    Tripo API An authenticated, credit-billed API with async jobs turns image-to-3D into a call you automate.

  • You want free, private, unlimited conversion, or high volume

    TripoSR (self-hosted) Self-hosting the MIT model is free per generation, runs offline, and has no cap.

  • You want to convert a photo and then 3D print it

    TripoSR (self-hosted) A free local mesh you can repair and print; see our companion guide on getting a printable STL.

How we tested

We compared the three routes on what actually decides which one fits: setup effort, cost and how it scales, control and privacy, automation, out-of-the-box quality, output formats, and the license to use the result. Rather than rank tools, the goal is to help you pick the route, web app, API, or self-host, that matches your situation.

This is a documentation-based comparison, not an independent benchmark. Facts come from each tool's official pages, Meshy's product, pricing, help, and docs pages; the Tripo API's official documentation and pricing; and TripoSR's repository, paper, and model card, all checked on 2026-07-20, with a source id on every claim below. Where pricing or terms sit behind a login, or where a figure is not published, we say so rather than guess. Tools and prices change, so confirm the current terms before you commit.

The bottom line

To convert a photo into a 3D model, match the route to your situation: a web app like Meshy for the easiest one-off, the Tripo API for automation and app integration, and self-hosted TripoSR for free, private, unlimited conversion you fully control. The web app is fastest to a first result, the API scales programmatically at a few cents to half a dollar per image, and self-hosting is the only free-at-any-scale, fully-private, MIT-licensed option. Whatever route you pick, the photo matters more than the tool, and every result is a starting mesh you refine, not a finished CAD file.

If you want the no-setup convenience of a web app but would rather keep the TripoSR approach, triposr.org runs image-to-3D in your browser and returns textured GLB you can convert and use, no install required. That hosted version is a paid product rather than free, but it skips the local setup while giving you commercial, watermark-free downloads.

FAQ

How do you convert a photo into a 3D model?

You give a single photo to an AI reconstruction model, which infers a full 3D mesh from it in seconds. There are three routes to do this: upload the photo to a web app like Meshy and download the model, send it to a developer API like the Tripo API and get the model back programmatically, or self-host an open model like TripoSR and run the conversion on your own machine. All three take one image in and return a mesh, usually as GLB or OBJ. The photo matters most: a single, clearly lit subject on a plain background gives the best result, because the model reconstructs the visible side and infers the rest.

Can you convert a 2D image to a 3D model for free?

Yes. The fully free, unlimited route is to self-host an open model: TripoSR is MIT-licensed and free to download and run, converting a photo to a mesh in under a second in about 6 GB of VRAM, with a CPU fallback, and no per-generation cost beyond electricity. Hosted tools also have free options with limits: Meshy has a free tier capped at a monthly download allowance and licensed CC BY 4.0, and the Tripo API offers a small free trial credit allowance. So free is realistic either by self-hosting an open model for unlimited conversions, or through a hosted free tier for a limited number.

What is the best way to convert a photo to a 3D model?

It depends on what you are optimizing for. For the easiest one-off with zero setup, a web app like Meshy is best: upload a photo and get a textured model in about a minute, no GPU or code. For converting images automatically or inside an app, a developer API like the Tripo API fits, with authenticated async jobs at about $0.20 to $0.50 per image. For free, private, unlimited conversion, especially at volume, self-hosting the open TripoSR model is the strongest, since it runs offline for free under a plain MIT license. Pick by priority: ease, automation, or free and private control.

Do I need one photo or several to make a 3D model?

One photo is enough for these tools: single-image reconstruction infers a full mesh from a single view, which is why it is so fast and convenient. The trade is that the side facing the camera is reconstructed and the unseen back is inferred, so results are best on simple, roughly symmetrical objects. If you need the hidden sides to be accurate rather than guessed, use a tool that accepts multiple views of the same object, several photos from different angles, which some APIs support through a dedicated multiview endpoint. For most uses, though, a single clean photo produces a usable model.

What file format do I get, and can I convert it?

Most image-to-3D tools return a GLB or OBJ mesh, which opens in every major 3D application. From there you convert to whatever your next step needs: STL for 3D printing, FBX for a game engine, or USDZ for AR. Hosted routes often hand you these directly: Meshy exports STL, 3MF, OBJ, GLB, FBX, and USDZ from one generation, and the Tripo API returns GLB natively with a conversion endpoint for OBJ, FBX, USDZ, STL, and more. With self-hosted TripoSR you get GLB or OBJ and convert in Blender or a converter. Note that STL carries geometry only, so textures do not travel with it.

How accurate is a 3D model made from a photo?

It is a good visual reconstruction, not a measured, CAD-accurate model. The tool captures the shape and appearance of the visible side well and infers the hidden geometry, so proportions are approximate and the back is a best guess. Accuracy is highest on solid, opaque, roughly symmetrical objects shot with clear lighting on a plain background, and lowest on transparent, reflective, thin, or cluttered subjects. Treat the output as a starting mesh: measure and scale it before you rely on dimensions, and expect to clean up or retexture it for a polished result. For accurate hidden sides, use multiple views rather than a single photo.

Can I convert a photo to a 3D model without a GPU?

Yes, through the hosted routes. A web app like Meshy and a developer API like the Tripo API run the reconstruction on their own servers, so a laptop or phone can drive them with no GPU of your own. If you prefer to self-host the open TripoSR model, it needs only about 6 GB of VRAM and falls back to CPU when there is no CUDA GPU, so it runs on modest hardware, just more slowly on CPU. So a strong GPU is optional: use a hosted tool to avoid local compute entirely, or lightweight self-hosted TripoSR if you want it free and local on modest hardware.

How much does it cost to convert an image to a 3D model?

It ranges from free to about half a dollar per image. Self-hosting the open TripoSR model is free per generation beyond your own hardware and electricity, with no cap. The Tripo API is pay-as-you-go at $0.01 per credit, and an image-to-model task is about 20 to 50 credits, so roughly $0.20 to $0.50 each, with about 300 free trial credits to start. Meshy is subscription-shaped: a free tier with a monthly allowance, and paid plans that lift the caps, so its cost depends on your monthly volume rather than a per-image price. For occasional use the hosted routes are cheap; at high volume, self-hosting is the only option that does not scale with usage.

Sources

Related

TripoSR Team

Editorial, TripoSR

Hands-on testing of image-to-3D and text-to-3D tools by the TripoSR team.

Convert a photo into a 3D model without any setup

Self-hosting the open model is free if you have the hardware, and a developer API scales for automation. If you just want to upload a photo and get a model, triposr.org runs image-to-3D in your browser with textured GLB output and commercial, watermark-free downloads. That hosted version is a paid product, not free, but there is nothing to install.

Try it in your browser