← All docs

Connect your Instagram account

Connect your Instagram account

Instagram is the highest-volume channel for most medspas. Once connected, Costello will reply to every new DM in under 60 seconds, 24/7.

This guide walks through the connection flow, the permissions Costello asks for, and the most common reconnect scenarios.

Before you start

Business or Creator account required

You must have an Instagram Business or Creator account — Meta does not allow third-party messaging on personal accounts. If you're unsure, open the Instagram app → Settings → Account → "Switch to Professional Account". If it offers to switch, you're currently on Personal.

You also need a Facebook Page linked to your Instagram account (it can be empty) and admin access to both.

Instagram account type check
Check your account type under Instagram Settings → Account.

The connection flow

1
Open Integrations

In Costello, open Integrations in the top nav.

2
Connect Instagram

Find the Instagram card and click Connect.

3
Authorise with Facebook

Costello redirects you to Facebook to authorise the connection.

4
Sign in

Sign in with the Facebook account that owns your Instagram and Page. This is usually your personal Facebook login, even for a business — Facebook only allows person-owned admin access.

5
Grant permissions

Tick the boxes to grant Costello access to all Pages and Instagram accounts you want it to receive messages from. If you have multiple business locations, you can connect them all.

Instagram permissions screen
Tick all Pages and Instagram accounts you want Costello to manage.
6
Choose your account

Select the specific Page and Instagram account from the dropdown.

7
Done

Click Done — you'll be redirected back to Costello. You should see a green "Connected" badge on the Instagram card, and a webhook test message should arrive within seconds.

What permissions Costello asks for, and why

Meta requires every messaging integration to ask for specific permissions. Here's what Costello asks for and why:

  • instagram_basic — read your IG account name and profile picture so we can display "you're connected as @youraccount".
  • instagram_manage_messages — receive new DMs from customers and send replies. This is the core capability.
  • pages_manage_metadata — subscribe Costello to your Page's message webhook. Without this, we wouldn't know when a new DM arrives.
  • pages_messaging — same as above but for Page messages (Costello uses one connection for both IG and Messenger).
  • business_management — only used if you connect multiple locations under a Meta Business Manager.

Costello does not ask for permissions to read your followers list, post on your behalf, or manage your account. It only accesses messaging data.

Verifying the connection works

After connecting, you can test from your own phone:

  1. Open Instagram → search for your business → start a new chat.
  2. Send a test message like "Hi, how much is a facial?".
  3. Within ~60 seconds, your AI receptionist will reply.

If nothing arrives in 2 minutes, see the troubleshooting section below.

Troubleshooting

"Instagram disconnected" banner in Costello

This usually means Meta has expired the access token (they auto-expire every 60 days for security). To fix:

  1. Open Integrations in Costello.
  2. Click Reconnect on the Instagram card.
  3. Re-authorise — same flow as the initial connection.

If reconnecting fails repeatedly, check that:

  • Your Instagram is still a Business or Creator account (someone may have switched it back to Personal).
  • The Facebook Page is still linked to your Instagram (check Instagram → Settings → Account → Page).
  • Your Meta admin role hasn't been removed.

Test message never arrives

  1. Verify the connection shows "Connected" in Costello (not "Token invalid" or "Disconnected").
  2. Make sure you're sending the test message from a different account — Instagram doesn't deliver webhooks for messages you send to yourself.
  3. Check Costello's Activity tab. If the message arrived but Costello chose not to reply — for example, the customer mentioned a competitor — it'll be logged there.

"This action requires you to log in" loop

Clear your Facebook session in the browser and try again. The OAuth flow occasionally gets stuck in a redirect loop if you have multiple Facebook accounts logged in.

What's different about Instagram vs Messenger

Most things work identically. A few specifics:

  • Instagram replies are sent within 24 hours of the customer's last message. After 24h, Costello can't reply (Meta's policy). For longer follow-ups, your team takes over from Instagram directly.
  • Stories and Reels comments are not Costello's surface. Only DMs.
  • Instagram doesn't allow rich attachments yet. Replies are text-only.

Next steps