> ## Documentation Index
> Fetch the complete documentation index at: https://docs.megaport.com/llms.txt
> Use this file to discover all available pages before exploring further.

# IP Address Pricing and Contract Terms

> This help topic describes IP Address block pricing and contract term details.

export const Image = ({src, alt = '', caption, width, height, shadow}) => {
  const errorPrefix = '\x1b[31;1;4mERROR\x1b[0m: Image -';
  if (typeof src !== 'string') {
    src = String(src);
  }
  if (!src || src === 'undefined') {
    console.error(`${errorPrefix} \`src\` is required — rendering an empty string instead`);
    return <></>;
  }
  const img = <img className={['mega-image-style', shadow ? 'shadow' : ''].join(' ')} src={src} alt={alt} width={width} height={height} style={{
    display: 'block'
  }} />;
  return caption ? <figure>
      {img}
      <figcaption style={{
    textAlign: 'center',
    width
  }}>{caption}</figcaption>
    </figure> : img;
};

export const Link = ({href, children}) => {
  const errorPrefix = '\x1b[31;1;4mERROR\x1b[0m: Link -';
  if (typeof href !== 'string') {
    href = String(href);
  }
  if (!href || href === 'undefined') {
    console.error(`${errorPrefix} the \`href\` property is required — rendering an empty string instead`);
    return <></>;
  }
  if (href.includes('{') || href.toUpperCase().includes('%7B')) {
    console.error(`${errorPrefix} could not resolve a variable in href "${href}" — rendering an empty string instead`);
    return <></>;
  }
  const isExternal = (/^https?:\/\//).test(href);
  return <a href={href} className="link" target={isExternal ? '_blank' : undefined} rel={isExternal ? 'noreferrer' : undefined}>
      {children ?? href}
      {isExternal && <span className="sr-only"> (opens in a new tab)</span>}
    </a>;
};

When you order an IP Address block, the Megaport Portal displays the monthly cost (before tax) based on the subnet size and metro you select, before you confirm the order.

## Contract terms

IP Address blocks are ordered on a fixed 12-month minimum contract term. Unlike other Megaport services, there is no pay-as-you-go (No Minimum Term) option, and you cannot change the subnet size or metro after ordering.

By default, the block automatically renews for another 12-month term when the contract ends. You can turn off automatic renewal during ordering, or at any time afterward from the **Billing** tab, so the block moves to month-to-month billing instead of renewing.

<Image src="/images/ip-address/ip-address-billing-term-management.png" alt="Billing tab Term Management section for an IP Address block, showing the Contract Term and Contract Renewal fields" shadow={true} width={900} />

<Note>
  If you select a 12-month term when ordering a new IP Address block, you cannot later renew it for a longer term, such as 24 or 36 months.
</Note>

For more information, see [Creating an IP Address Block](/ip-address/creating-ip-address).

## How does billing work?

Megaport charges a recurring monthly flat fee based on the subnet size of the IP Address block. The rate is fixed for the life of the block. To use a different subnet size, you must order a new block. For more information about available sizes, see [IP Address block sizes](/ip-address#ip-address-block-sizes).

## Cancellation

Canceling an IP Address block on a contract term will result in an early termination fee (ETF) equivalent to 100% of the remainder of the term. You can waive the ETF yourself by ordering an eligible replacement service. For more information, see [Managing Early Termination Fees](/finance/etf-management).

## Helpful references

* [Billing Overview](/finance/overview)
* [Creating an IP Address Block](/ip-address/creating-ip-address)
* [IP Address Billing](/finance/ip-address-billing)
* [IP Address block sizes](/ip-address#ip-address-block-sizes)
* [IP Address Overview](/ip-address)
* [Linking and Unlinking Megaport Internet Connections](/ip-address/linking-vxc)
* [Managing Early Termination Fees](/finance/etf-management)
* [Terminating an IP Address Block](/ip-address/terminating-ip-address)
