Baker StationStudios Book now

Music video & film location near Nashville

A timeless country look, ready to shoot.

Goodlettsville, Tennessee

An 1850s storybook farmhouse on 4 acres just outside Nashville — a film location and photo shoot location with eight styled sets inside, and a barn, forest, pasture, and horses outside. One look after another, all on one property. Book the location on its own, or add Tyler as your DP with his cinema camera — either way, booking takes about a minute.

8 styled sets 4 acres outdoors 25 person capacity 5.0 ★ from past shoots
The Location

Storybook farmhouse film & photo shoot location near Nashville

A working film location and photo shoot location in Goodlettsville, minutes from Nashville. The house is dressed and camera-ready — you bring the production, the looks are already here.

Included with every booking
  • ✓All 8 styled sets — the house comes dressed and ready, not empty rooms.
  • ✓Props throughout — period furniture and dressing already in place on every set.
  • ✓The full outdoors — barn, enchanted forest, pasture, and horses on property.
20 parking spaces Full kitchen 2 bathrooms Wi-Fi Capacity 25 Horses on property
8Styled sets inside the house
4Acres of outdoor looks
25Person capacity
20Parking spaces
Music videos — filmed at the farmhouse

Music videos filmed at our Nashville-area farmhouse

The finished music videos shot on this property, straight from YouTube — Avery Anna's “GRAVE” and “depression” from her Let Go Letters film, Ashley McBryde's “Creosote,” Rachel Curtis's “Growth Rings,” Colton Dawson's “It's Gonna Rain” lyric video, visualizer, and live performance and “Piece Of Heaven” visualizer, Roan Ash's “Jolene” cover, “Monday” visualizer, and “Holy Ground” lyric video, and Amberlea Bruch's “3/4 of a Cigarette,” filmed live right here at the studio. Swipe through and press play — they all play right here.

Swipe or drag to move through them — tap play and every video plays right here on this page.

See the reels ↓
Reels — filmed at the farmhouse

Music video reels shot at the farmhouse

Short-form clips from shoots on this property. Swipe through them, tap any one, and the reel pops open right here — press play and watch without leaving the page.

Thirty-seven reels, one property — every one above was filmed right here.

Rates & booking ↓
Rated 5.0 — 7 reviews on Avvay · 9 reviews on Peerspace — from productions that shot here

"Beautiful and secluded location for video shoots"

— Cody L.

"A fantastic location and DP's paradise! So many great textures inside and outside."

— Brandon C.

"Beautiful space with a lot of different options to shoot in."

— Megan C.
Rates & Booking

Book this Nashville film location — two ways, every rate up front

No packages to decode and no quote tag to play. Rent the property on its own, or book it with Tyler as your DP — here's exactly what each rate includes.

Location Only

Full-day rate$800 /day

or $125 /hour · 2-hour minimum

The whole property, dressed and ready — you bring your own crew and cameras.

Services included

  • ✓All 8 styled sets — dressed and camera-ready, not empty rooms
  • ✓Props & period furniture — already in place on every set
  • ✓The full outdoors — barn, enchanted forest, pasture & horses
  • ✓Full kitchen, 2 bathrooms & Wi-Fi
  • ✓Parking for 20 — crews of up to 25 people

Lighting is not included with this package — please bring your own, or book Location + Crew and Tyler will set and operate the lighting for you.

Book Location Only

Goes straight to our inbox — we confirm your date by email, no platform in between.

1

Pick your date & package

Tap the booking button on the rate you want — or head straight to the booking form — and choose your shoot date, your package, and what you're shooting.

2

We confirm by email

Your inquiry goes straight to [email protected] — no booking platform, no middleman. Tyler replies from there to confirm your date, hours, and the details of your shoot.

3

Show up and shoot

The sets are dressed, the props are in place, and there's parking for 20. Bring your crew — or let Tyler shoot it with you.

One thing we need: every booking provides a certificate of insurance listing Tyler Shoemaker as additional insured — we'll send the exact listing details by email when we confirm your date.

Which one fits your shoot?

You have a crew and cameras: book Location Only at $125/hr or $800/day and the property is yours.

You need someone to shoot it: book Location + Crew at $275/hr or $2,200/day and Tyler directs and shoots it on his cinema camera, right here on the property he knows best.

Not sure? Pick “Not sure yet” in the booking form below and say what you're shooting — you'll get a straight answer on which rate you actually need.

Booking — direct to the studio

Book your shoot date near Nashville

Booking lives on its own page so this one stays simple. The booking page asks a few quick questions — package, date and start time, hours, crew size — and sends it all as one email straight to Baker Station Studios. Tyler confirms everything with you from there. No booking platform, no middleman, and no payment until he replies and your booking is confirmed.

Location Goodlettsville, TN — just outside Nashville

What are you booking?

Tap one package and one shoot type — that's this whole step.

Package
Type of shoot

When, and how big?

Pick your date on the calendar and your start time, so everything's set when your inquiry lands.

Hours needed
Crew / production size

Anything else Tyler should know?

The sets you're eyeing, the look you're after, special requests — or skip this step entirely.

Where do we send the reply?

Press send and your inquiry goes straight to Baker Station Studios — right from this page, no email app involved. Tyler confirms your date by reply. No payment is taken now; that only happens after he replies and your booking is confirmed.

← Back to the site Booking — direct to the studio

Book your Nashville shoot

Four quick steps — what you're booking, when, anything else we should know, and where to reply. Press send and your answers go straight to Baker Station Studios from this page — no email app, no extra steps. Tyler confirms your date by reply. No payment is taken on this page.

One thing we need: every booking provides a certificate of insurance listing Tyler Shoemaker as additional insured — we'll send the exact listing details by email when we confirm your date.

Owner setup — connect this form to your Gmail (one time, ~5 minutes)

The form stays right here on the website — visitors never leave the page, no email app opens, and there is no redirect. When they press Send, the page posts their answers to a small Google Apps Script that you own under [email protected]. The script emails the inquiry to your studio inbox and immediately emails the visitor back confirming you got it and will be in touch soon. Both emails come from your own Gmail, carry the house photo and logo, and contain no payment link — that only goes out later, after you personally confirm a booking. It's free (Google Apps Script + Gmail, no paid tier).

Why this fixes the Spam problem: the inquiry email is sent by your own Gmail account to itself, and the auto-reply is sent by your Gmail with Google's own authentication — there's no outside relay for filters to distrust. As a belt-and-braces step, also do step 7.

  1. Open script.google.com in your browser and make sure you're signed in as [email protected] (check the profile photo, top right — not your personal Gmail).
  2. Click New project. Delete the placeholder code in the editor, then paste in the complete script below (use the Copy button).
  3. Click the floppy-disk / Save icon and name the project Baker Station — Booking Form.
  4. Click Run once (with doGet selected if it asks). Google will ask you to authorize the project — choose the [email protected] account, click Advanced → Go to Baker Station — Booking Form if you see an "unverified" warning (it's your own script), and allow it to send email as you. This permission step is what lets it send both emails.
  5. Click Deploy → New deployment. Click the gear by "Select type" and choose Web app. Set Execute as: Me ([email protected]) and Who has access: Anyone. Click Deploy.
  6. Connected. The form's APPS_SCRIPT_URL is set to the live Web app URL: https://script.google.com/macros/s/AKfycbwq5AR9L-KwoAlmuq27bGm2qA5ejKsmcSOHBgpKmxoxvw_i3QpxqL8Lm-JmyYjCToGbdg/exec — deployed under [email protected]. No further paste is needed.
  7. Never-Spam safety net: in the [email protected] Gmail, open Settings → See all settings → Filters and Blocked Addresses → Create a new filter. Put Booking inquiry in the Subject field, create the filter, and tick Never send it to Spam and Always mark it as important. Inquiry emails are sent by your own account so they should already land in the Inbox — this filter guarantees it.
  8. Send yourself a test booking from this page. You should get the inquiry in the studio Inbox within a few seconds, and the confirmation email at the address you entered — check both look right (house photo and logo at the top, no payment link, no third-party footer).

If you ever edit the script later: don't create a new deployment — go to Deploy → Manage deployments, edit the existing one, and choose "New version", so the URL stays the same and the form keeps working.

Complete Google Apps Script — paste into script.google.com
/**
 * Baker Station Studios — Booking Inquiry Handler
 * Owner account: [email protected]
 *
 * Paste this whole file into a new project at script.google.com,
 * then Deploy > New deployment > Web app
 * (Execute as: Me · Who has access: Anyone).
 */

var STUDIO_INBOX = '[email protected]';
var STUDIO_NAME  = 'Baker Station Studios';
var SITE_URL     = 'https://bakerstationstudios.com';
var HERO_URL     = SITE_URL + '/assets/hero-magic-house.jpg';
var LOGO_URL     = SITE_URL + '/assets/logo-train.png';

function doPost(e) {
  try {
    var p = (e && e.parameter) || {};

    // Honeypot: real visitors never fill this hidden field.
    if (p.website) return json_({ result: 'success' });

    var name    = clean_(p.name);
    var email   = clean_(p.email);
    var pkg     = clean_(p.package);
    var type    = clean_(p.type);
    var date    = clean_(p.date);
    var start   = clean_(p.start);
    var hours   = clean_(p.hours);
    var crew    = clean_(p.crew);
    var details = clean_(p.details);

    if (!name || !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)) {
      return json_({ result: 'error', message: 'Missing name or valid email.' });
    }

    var subject = 'Booking inquiry — ' + pkg + ' — ' + type + ' (' + name + ')';

    // ---------- 1) Inquiry email to the studio inbox ----------
    var studioHtml =
      header_() +
      '<p style="font-size:16px;color:#2f2a1e;">A new booking inquiry just came in from the website:</p>' +
      table_([
        ['Name', name],
        ['Email', email],
        ['Package', pkg],
        ['Shoot type', type],
        ['Shoot date', date || '(not set yet)'],
        ['Start time', start || '(not set yet)'],
        ['Hours needed', hours],
        ['Crew / production size', crew],
        ['Anything else', details || '(nothing added)']
      ]) +
      '<p style="font-size:14px;color:#57492f;">Reply to this email to answer ' +
      esc_(name) + ' directly — the reply goes straight to them. ' +
      'No payment link has been sent; that only goes out after you confirm the booking.</p>' +
      footer_();

    MailApp.sendEmail({
      to: STUDIO_INBOX,
      subject: subject,
      htmlBody: studioHtml,
      replyTo: email,
      name: 'Baker Station Studios Website'
    });

    // ---------- 2) Automatic confirmation to the visitor ----------
    var visitorHtml =
      header_() +
      '<p style="font-size:16px;color:#2f2a1e;">Hi ' + esc_(name) + ',</p>' +
      '<p style="font-size:16px;color:#2f2a1e;">Thank you — your booking inquiry is in, ' +
      'and we will be in touch soon. Tyler will reply to this email address to confirm ' +
      'your date, hours, and the details of your shoot.</p>' +
      '<p style="font-size:16px;color:#2f2a1e;">Here is what you sent us:</p>' +
      table_([
        ['Package', pkg],
        ['Shoot type', type],
        ['Shoot date', date || '(not set yet)'],
        ['Start time', start || '(not set yet)'],
        ['Hours needed', hours],
        ['Crew / production size', crew]
      ]) +
      '<p style="font-size:14px;color:#57492f;">No payment is due now — payment is only ' +
      'arranged after Tyler replies and your booking is confirmed.</p>' +
      footer_();

    MailApp.sendEmail({
      to: email,
      subject: 'We received your booking inquiry — Baker Station Studios',
      htmlBody: visitorHtml,
      name: STUDIO_NAME
    });

    return json_({ result: 'success' });
  } catch (err) {
    return json_({ result: 'error', message: String(err) });
  }
}

// Lets you (and the website) check the script is alive.
function doGet() {
  return json_({ result: 'ok', service: 'Baker Station Studios booking form' });
}

function header_() {
  return '' +
    '<div style="font-family:Georgia,serif;max-width:620px;margin:0 auto;">' +
    '<img src="' + LOGO_URL + '" alt="Baker Station Studios" width="72" height="72" ' +
      'style="display:block;margin:0 auto 10px;border-radius:50%;" />' +
    '<div style="text-align:center;font-size:22px;letter-spacing:2px;color:#2f2a1e;">' +
      'BAKER STATION STUDIOS</div>' +
    '<div style="text-align:center;font-size:12px;letter-spacing:2px;color:#8c2f1d;' +
      'margin-bottom:16px;">GOODLETTSVILLE, TN — JUST OUTSIDE NASHVILLE</div>' +
    '<img src="' + HERO_URL + '" alt="The farmhouse at Baker Station Studios at dusk" ' +
      'width="620" style="display:block;width:100%;max-width:620px;margin:0 0 20px;" />';
}

function table_(rows) {
  var html = '<table cellpadding="8" cellspacing="0" ' +
    'style="border-collapse:collapse;width:100%;font-size:15px;color:#2f2a1e;margin:0 0 18px;">';
  rows.forEach(function (r) {
    html += '<tr>' +
      '<td style="border:1px solid #c9b489;background:#f7ecd2;font-weight:bold;' +
        'width:170px;vertical-align:top;">' + esc_(r[0]) + '</td>' +
      '<td style="border:1px solid #c9b489;vertical-align:top;">' + esc_(r[1]) + '</td>' +
      '</tr>';
  });
  return html + '</table>';
}

function footer_() {
  return '<p style="font-size:13px;color:#77653f;border-top:1px solid #c9b489;' +
    'padding-top:12px;">Baker Station Studios · Goodlettsville, TN · ' +
    '<a href="' + SITE_URL + '" style="color:#8c2f1d;">bakerstationstudios.com</a></p></div>';
}

function clean_(v) { return (v == null ? '' : String(v)).trim(); }

function esc_(v) {
  return clean_(v)
    .replace(/&/g, '&amp;')
    .replace(/</g, '&lt;')
    .replace(/>/g, '&gt;')
    .replace(/"/g, '&quot;');
}

function json_(obj) {
  return ContentService
    .createTextOutput(JSON.stringify(obj))
    .setMimeType(ContentService.MimeType.JSON);
}

Questions while you're setting it up? The URL from step 6 is the only thing this page needs — everything else lives in your Google account, under your control.