Teachable Machine
Google's Teachable Machine lets you train machine learning models entirely in your web browser. No installation, no account, no setup — just open the website, record samples, click train, and get a working model in minutes.
Three Project Types
| Type | Input | Example Use Cases |
|---|---|---|
| Image | Webcam or uploaded images | Object recognition, gesture control, quality inspection |
| Audio | Microphone or uploaded audio | Sound detection, voice commands, music classification |
| Pose | Webcam body tracking | Exercise form checking, dance moves, sign language |
How It Works
Go to teachablemachine.withgoogle.com
No download or sign-up needed. Choose Image, Audio, or Pose project.
Create Classes
Define two or more classes (categories). For example, "Standing" and "Sitting" for a pose project.
Record Samples
Use your webcam or microphone to record examples for each class. Hold the record button and capture varied samples. You can also upload files.
Train
Click "Train Model." Training happens in your browser using TensorFlow.js and takes seconds to minutes depending on data size.
Test
The preview panel shows real-time predictions. Move around, make sounds, or show images to see how the model performs.
Export
Download as TensorFlow.js (for websites), TF Lite (for mobile), or get a shareable hosted model link.
Creative Project Ideas
- Webcam instrument: Train pose recognition for different body positions, then map each pose to a different musical note or sound effect
- Pet detector: Train an image model to recognize your pet vs other animals, then use it as a smart pet door controller
- Accessibility tool: Build a sound classifier that alerts deaf users when it detects a doorbell, alarm, or baby crying
- Smart recycling: Point your camera at trash and get instant classification of material type
- Exercise counter: Use pose detection to count reps of exercises like squats, push-ups, or jumping jacks
Using in Web Projects
Teachable Machine models export as TensorFlow.js and can run directly in any website:
// Load a Teachable Machine image model const URL = "https://teachablemachine.withgoogle.com/models/YOUR_MODEL/"; async function predict() { const model = await tmImage.load( URL + "model.json", URL + "metadata.json" ); const webcam = new tmImage.Webcam(200, 200, true); await webcam.setup(); await webcam.play(); // Predict every frame async function loop() { webcam.update(); const predictions = await model.predict(webcam.canvas); console.log(predictions); requestAnimationFrame(loop); } loop(); }
Teachable Machine vs Lobe
| Feature | Teachable Machine | Lobe |
|---|---|---|
| Platform | Browser-based | Desktop app (Win/Mac) |
| Data types | Image, audio, pose | Image only |
| Training location | In browser (client-side) | Local machine |
| Sharing | Hosted model URL | Export files only |
| Best for | Quick prototypes, education | Polished image classifiers |
Lilly Tech Systems